Comment joindre deux tables
Résolu
dadidiable
Messages postés
43
Statut
Membre
-
dadidiable Messages postés 43 Statut Membre -
dadidiable Messages postés 43 Statut Membre -
Bonjour, tout le monde
je veux faire une chose avec mes deux tables SQL qui semble facile pour un expert en SQL, mais pas pour moi, enfin j'ai deux tables (facture:[ n_fact:qte:prix:n_lot.....]) et (detail_fact: [n_fact:date_fact:etat_fact.....]) , alors je veux joindre mes deux pour obtenir un résultat du genre (join_table: [n_fact:qte:prix:n_lot:date_fact:etat_fact]) donc je veux garder la colonne n_fact et ajouter les autres colonnes.
merci d'avance!
je veux faire une chose avec mes deux tables SQL qui semble facile pour un expert en SQL, mais pas pour moi, enfin j'ai deux tables (facture:[ n_fact:qte:prix:n_lot.....]) et (detail_fact: [n_fact:date_fact:etat_fact.....]) , alors je veux joindre mes deux pour obtenir un résultat du genre (join_table: [n_fact:qte:prix:n_lot:date_fact:etat_fact]) donc je veux garder la colonne n_fact et ajouter les autres colonnes.
merci d'avance!
2 réponses
-
Bonjour
Si j'ai bien compris ce que tu veux, c'est une simple jointure :
SELECT facture.n_fact, qte, prix, n_lot, date_fact, etat_fact FROM facture INNER JOIN detail_fact ON facture.n_fact = detail_fact.n_fact
-
merci le père de ta réponse aussi rapide, mais dans la jointure je veux qu'une seule colonne de n_fact parce que avec ta requête il y a deux colonne identique n_fact, une idée? merci encore.
- Ma requête ne renvoie qu'une seule colonne n_fact, c'est une certitude.
Si tu en as obtenu 2, c'est que tu as fait autre chose.
Comment as-tu fait pour essayer ma requête ?
[edit] En relisant plus attentivement ta réponse, c'est dans la jointure que tu ne veux qu'une seule colonne ? Qu'est-ce que ça veut dire ? Une jointure c'est par définition entre plusieurs colonnes, non ? - toutes mes excuses le père, j'ai pas recopier ta requête, j'ai fait cela
SELECT * FROM facture INNER JOIN detail_fact ON facture.n_fact = detail_fact.n_fact. c'était pour ne pas réécrire toutes les colonnes
( facture.n_fact, qte, prix, n_lot, date_fact, etat_fact), donc je pense que t'as raison et c'était ma faute, alors je vous remercier encore.
une autre question si tu me le permis: je veux dans la même requête faire un select par rapport à la "date_facture" genre "select * from facture, detail_fact where DATE_FACT = current_date ; " s'il est possible bien sûr, et merci encore
-
-
C'est tout à fait possible d'ajouter ta condition, mais attention, current_date est une fonction : il ne faut pas oublier les parenthèses :
...WHERE date_fact=CURRENT_DATE()