Ich habe drei Tabellen:Wählen Sie Zeilen aus zwei Tabelle verbunden, die in einer dritten Tabelle nicht
Tabelle 1: (EmployeeID int, EmployeeType int)
Table2: (AllowanceID int, EmployeeType int)
Tab.3: (EmployeeID int, int AllowanceID)
01.235.Ich brauche eine Abfrage, um verknüpfte Zeilen aus den beiden Tabellen (Tabelle1, Tabelle2) auszuwählen, die nicht in der dritten (Tabelle3) resultieren.
Ich habe versucht:
Select t1.EmployeeID, t2.AllowanceID
From Table2 t2 Inner Join
Table1 t1
on t1.EmployeeType = t2.EmployeeType
where Not Exists (select 1
From Table3 t3
where t3.EmployeeID = t1.EmployeeID and
t3.AllowanceID = t2.AllowanceID
)
aber keinen Erfolg.
CREATE TABLE [dbo].[Table1](
[EmployeeID] [int] NULL,
[EmployeeType] [tinyint] NULL
) ON [PRIMARY]
CREATE TABLE [dbo].[Table2](
[AllowanceID] [int] NOT NULL,
[EmployeeType] [int] NULL
) ON [PRIMARY]
CREATE TABLE [dbo].[Table3](
[AllowanceID] [int] NULL,
[EmployeeID] [int] NULL
) ON [PRIMARY]
Insert into Table1 (EmployeeID,EmployeeType)
Values
(352395, 10),
(352396, 16),
(352397, 15),
(352398, 10),
(3523991, 16),
(NULL, 16)
Insert into Table2 (AllowanceID, EmployeeType)
Values
(100, 50),
(30, 9),
(32, 10),
(37, 16),
(512, 28),
(6000, 10)
Insert into Table3 (AllowanceID,EmployeeID)
Values
(NULL, 352400),
(32, NULL),
(37, NULL),
(37, 352395),
(6000, 352395),
(30, 352396),
(32, 352396),
(37, 352396),
(512, 352396),
(6000, 352396),
(30, 352397),
(32, 352397),
(37, 352397),
(512, 352397),
(6000, 352397),
(30, 352398),
(32, 352398),
(37, 352398),
(512, 352398),
(6000, 352398),
(30, 352399),
(32, 352399),
(37, 352399),
(512, 352399),
(6000, 352399)
Was bedeutet "kein Erfolg bedeuten"? Können Sie Beispieldaten und gewünschte Ergebnisse bereitstellen? –
Ich bin die zweite Anfrage von Gordon Linoff. Als Anmerkung habe ich Ihren Post bearbeitet, um einige Zeilenumbrüche in Ihren Code einzufügen (hat nichts im Code selbst geändert). Wie es war, streckte es sich sehr weit und Benutzer mussten viel scrollen, um alles zu sehen. Nur ein Feedback für zukünftige Postformatierung. – SandPiper
Der von Ihnen gepostete Code scheint mir gut zu sein, aber ohne Beispieldaten (wie DDL + DML), eine klare Problembeschreibung und gewünschte Ergebnisse ist es sehr schwierig, Ihre Frage zu beantworten. –