Page 1 sur 1

Deux tables, une commande SQL ?

Posté : 17 janv. 2007, 15:20
par jojo123
Bonjour à tous

Supposons que l'on ai deux tables avec la structure suivante:

Code : Tout sélectionner

table1 -------- id titre table2 -------- id titre
Comment récuperer, en une seule requête, le contenu de la table1 et celui de la table2 ?

Exemple:

Code : Tout sélectionner

contenu de la table1 ----------------------- id titre ----------------------- 1 toto 2 titi 3 henri contenu de la table2 ----------------------- id titre ----------------------- 1 jerome 2 jean 3 paul 4 luc resultat de la requete en question ;o) ----------------------- id titre ----------------------- 1 toto 2 titi 3 henri 1 jerome 2 jean 3 paul 4 luc
Merci de votre aide !

Posté : 17 janv. 2007, 16:47
par zeus
La commande SQL UNION permet de mettre à la suite les résultats de 2 requêtes.

Code : Tout sélectionner

(SELECT id, titre FROM table1) UNION (SELECT id_titre FROM table2)
Tu peut même utiliser les ORDER BY ou LIMIT sur ce résultat

Code : Tout sélectionner

(SELECT id, titre FROM table1) UNION (SELECT id_titre FROM table2) ORDER BY titre

Posté : 17 janv. 2007, 19:02
par jojo123
Merci pour l'info ! (vous pouvez mettre résolu :) )

Posté : 17 janv. 2007, 19:40
par Aureusms
Bonjour à tous,

Juste une question pour zeus (car je suis aussi intéressé). Dans ta requête :

Code : Tout sélectionner

(SELECT id, titre FROM table1) UNION (SELECT id_titre FROM table2) ORDER BY titre
Le order By Titre est celui de table1 ou de table2?
Une autre p'tite question : Est normal que tu mettes un "_" dans id_titre ?

Posté : 17 janv. 2007, 20:36
par zeus
Salut,

En fait, le ORDER BY titre s'applique à l'union des deux requetes, donc à l'ensemble des résultats des 2 requêtes ;)

Et, effectivement, le "_" est une faute de frappe, la requete exacte est :

Code : Tout sélectionner

(SELECT id, titre FROM table1) UNION (SELECT id, titre FROM table2) ORDER BY titre

Posté : 17 janv. 2007, 21:19
par Aureusms
Merci.