Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL-Abfrage zum Abrufen der Daten aus zwei Tabellen ohne Zustand

Diese Abfrage sollte funktionieren, ich habe einen einfachen Test basierend auf Ihrer Abfrage durchgeführt und er liefert nicht das gewünschte Ergebnis

SELECT *
FROM Table1 t1
LEFT JOIN Table2 t2
    ON t1.col1 = t2.col1 AND t1.col2 = t2.col2
WHERE t2.col1 IS NULL AND t2.col2 IS NULL

Angesichts dessen

CREATE TABLE Table1
(
colA    VarChar(50),
col1    Int,
col2    Int
)

CREATE TABLE Table2
(
colB    VarChar(50),
col1    Int,
col2    Int
)

INSERT Table1
VALUES ('A', 1, 1),
        ('B', 1, 2),
        ('C', 2, 1)

INSERT Table2
VALUES ('X', 1, 1),
        ('Y', 2, 1),
        ('Z', 2, 2)

Wenn ich Ihre Frage verstanden habe, sollten wir dieses B | bekommen 1 | 2