SQL Server: Links Join Ergebnisse in weniger Zeilen als in der linken Tabelle

8

Ich benutze SQL Server (ich glaube es ist 2005).

Ich habe TableA mit 2 Spalten und 439 Zeilen (jede Zeile ist eindeutig).

%Vor%

Ich habe TableB mit 35 Spalten und vielen hunderttausend Zeilen (jede Zeile ist auch einzigartig).

%Vor%

Jede Zeile in TableB hat stündliche Beobachtungen und einige andere Informationen zur Hausverwaltung. Jetzt zu Testzwecken bin ich nur am heutigen Datum d. H. 19.04.2013 interessiert.

Wenn ich das tue:

%Vor%

Ich bekomme 10526, was korrekt ist, da es 10526 verschiedene Orte gibt, für die es stündliche Beobachtungsdaten gibt.

Ich möchte JOIN TableA und TableB on a.id = b.id VERLASSEN, was ein Ergebnis mit 439 Zeilen ergeben sollte.

Leider hat das Ergebnis 246 Zeilen. Wie kann das sein? Ist LEFT JOIN nicht so, dass alle Zeilen in TableA zurückgegeben werden, unabhängig davon, ob eine Übereinstimmung in TableB vorhanden war?

* BEARBEITEN *

Die vollständige Abfrage, die ich verwendet habe, war:

%Vor%     
codingknob 20.04.2013, 04:27
quelle

1 Antwort

17

Versuchen Sie Folgendes:

%Vor%

Oder das:

%Vor%     
faisal 20.04.2013, 04:50
quelle

Tags und Links