J'ai un très de base JOINTURE EXTERNE GAUCHE pour retourner tous les résultats de la table de gauche et quelques informations supplémentaires à partir d'une grande table. La table de gauche contient 4935 enregistrements, mais lorsque j'ai JOINTURE EXTERNE GAUCHE à une table supplémentaire le nombre d'enregistrements est significatnly plus.
Pour autant que je suis conscient qu'il est absolument évangile qu'une JOINTURE EXTERNE GAUCHE sera de retour tous les enregistrements de la table de gauche avec les enregistrements correspondants de la table de droite et des valeurs null pour toutes les lignes qui ne peuvent être mis en correspondance, en tant que tel il me fait comprendre qu'il devrait être impossible de retourner plus de lignes que exister dans la table de gauche, mais il arrive tout de même!
La Requête SQL suivante:
SELECT SUSP.Susp_Visits.SuspReason, SUSP.Susp_Visits.SiteID
FROM SUSP.Susp_Visits LEFT OUTER JOIN
DATA.Dim_Member ON SUSP.Susp_Visits.MemID = DATA.Dim_Member.MembershipNum
J'ai peut-être fait une erreur dans la syntaxe ou ma compréhension de la JOINTURE EXTERNE GAUCHE est incomplète, quelle que soit la raison pour laquelle je suis en train de devenir fou ici, j'espère que quelqu'un peut expliquer comment cela pourrait être présentes?
Postscript
Merci pour le grea réponses, ma compréhension de JOINTURES EXTERNES gauches est maintenant beaucoup mieux, quelqu'un pourrait-il cependant suggérer une voie à cette requête pourrait être modifiée de manière que je ne reçois que le nombre d'enregistrements retournés, s'il en existe dans la table de gauche?
Cette requête est purement pour générer un rapport et de le dupliquer correspond simplement à créer de la confusion.
/Postscript