Re: [LA-discussions] requête mysql

[ Thread Index | Date Index | More linuxarverne.org/discussions Archives ]


Le jeudi 21 mai 2009 20:58:57 jean-luc boutin, vous avez écrit :
> Bonsoir à tous,
Bonsoir,

> j'ai un petit souci pour effectuer une requête mysql à partir de
> plusieurs tables
>
> Voici ce que je fais pour joindre 2 tables:
>
>
> SELECT `Colonne1`,`Colonne2`,`Colonne3` FROM `Table1` LEFT JOIN
> `Table2`  USING (`Colonne1`);
Tente d'utiliser la syntaxe SQL du LEFT JOIN avec ON plutôt que USING.

> ça marche bien pour joindre 2 tables mais pas pour joindre 4 ou 5 tables.
> Le champ Colonne1 est présent dans chaque table.
>
> Table1 constituée de Colonne1+Colonne2
> Table2                      Colonne1+Colonne3
> Table3                      Colonne1+Colonne4
> Table4                      Colonne1+Colonne5
> Table6                      Colonne1+Colonne6
>
> évidemment les Colonnes1 ne sont pas identiques dans toutes les tables.
À la volée, j'écrirai quelque chose comme ça (avec les 3 premières tables):
SELECT Table1.Colonne1, Table1.Colonne2, Table2.Colonne1, Table2.Colonne3, 
Table3.Colonne1, Table3.Colonne4 
 FROM Table1
 LEFT JOIN Table2 ON Table1.Colonne2=Table1.Colonne1
 LEFT JOIN Table3 ON Table1.Colonne3=Table1.Colonne1

mais je ne garanti rien...

> Je soupçonne que je peux résoudre mon problème en créant un nouvelle
> table à partir
> du résultat de la première requête que je joins à une autre table
> résultat d'une autre requête ainsi de suite...
> mais j'aimerais savoir si cela peut se faire en une seule requête.
Même si ma requete ne fonctionne pas, je suis sûr qu'il est possible d'écrire 
une seule requete SQL.

-- 
neomilium

---
Liste de discussions de LinuxArverne
http://wiki.linuxarverne.org/listes_de_diffusion


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/