J'ai une base de données SQL qui contient plusieurs tables relationnelles. Certains champs de la table principale référencent plusieurs fois une autre table. Par exemple, disons que j'ai une base de données de vendeurs qui sont responsables des ventes pour plusieurs états. Ma base de données contient des champs pour State1, State2 et State3 qui retournent tous vers une table States. Je ne peux pas comprendre pour la vie de moi comment écrire une requête pour retourner un enregistrement avec tous les états énumérés. Si je n'avais besoin que d'un champ d'état, je sais que je ferais:Sélection SQL avec plusieurs références à table unique
SELECT Master.Name, State.Enumeration AS 'State'
FROM MasterTable Master, StateTable State
WHERE Master.State1 = State.ID;
Comment puis-je développer ceci pour tous mes champs d'état?
Merci.
+1: Pour ajouter LEFT JOIN alternative –
@ lumberjack4: Il n'y a pas de différence de performance entre la syntaxe ANSI-89 que vous avez posté, et ANSI-92 de Fosco. L'avantage de l'ANSI-92 est la syntaxe standardisée et largement supportée de OUTER JOIN (GAUCHE, DROITE au moins). –
Merci à vous deux .. réalisé quand je suis en train d'éditer pour ajouter la deuxième requête. – Fosco