Requête SQL sur plusieurs tables

Solar13 Messages postés 204 Date d'inscription   Statut Membre Dernière intervention   -  
maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à vous,

J'ai une question simple, il est possible de faire une requête SQL sur plusieurs tables si elles sont liées ?

J'ai deux tables, une personne et une pays.
Elles sont liés par l'ID par une clé étrangère sur l'ID sur la table personne.

Comment je peux récupérer par exemple le nom de la personne et le nom du pays avec la même requête ?

Merci à vous
A voir également:

5 réponses

babane5 Messages postés 99 Date d'inscription   Statut Membre Dernière intervention   11
 
SELECT nom_personne, nom_pays FROM personne as pe INNER JOIN pays as pa ON pe.id= pa.id
0
jdao78 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Essayez de faire 1 requête suivante :

Select PE.nom de la personne, PA.nom pays
from Personne PE, Pays PA
where PE.ID = PA.ID

Bon courage !
0
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   19
 
Tout a fait d'accord
0
maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   80
 
il est préférable d'utiliser des jointures comme l'a fait babane 5 au-dessus
0
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   19
 
Avis personnel : Celle de babane 5 est moins intuitif et plus compliqué quand il y a une dizaine de tables en relation...
0
maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   80
 
moins intuitif, c'est ce que tu penses mais c'est comme çà que se fait une vraie jointure....

Quand tu auras une dizaine de tables à lier, certaines devant respecter la jointure (INNER) et d'autres non (LEFT ou RIGHT), tu feras comment avec ta technique ??
0
Solar13 Messages postés 204 Date d'inscription   Statut Membre Dernière intervention  
 
Merci à toi,

pa = pays et pe = personne ?
0
babane5 Messages postés 99 Date d'inscription   Statut Membre Dernière intervention   11
 
SELECT pe.nom_personne, pa.nom_pays FROM personne as pe INNER JOIN pays as pa ON pe.id= pa.id

(as => permet de renommé un élément !)
0
Solar13 Messages postés 204 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, je vais tester ça :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jdao78 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
oui,

pa = alias de la table pays
pe = alias de la table personne

Tu peux aussi faire la requête comme indiqué par babane5 mais je pense qu'elle est - performance que la jointure directe.
0