2016-05-19 8 views
-1

Durch Ausführen folgende Abfragen verwendet wird, ich nicht Wert einfügen kann, wenn nicht existiert "NOT IN" in der SQL-Server-Tabelle mit:kann nicht Wert einfügen, wenn nicht vorhanden ist "NOT IN" in der SQL-Server-Tabelle

CREATE TABLE tbl (Name VARCHAR(20)) 
GO 

INSERT INTO tbl 
VALUES ('bk'), ('ck'), ('kk') 
GO 

CREATE TABLE #tt (Name VARCHAR(50)) 
GO 

INSERT INTO #tt 
VALUES ('jk'), ('dk'), ('kk') 
GO 


--Script 1 
INSERT INTO tbl (Name) 
    SELECT Name 
    FROM #tt t 
    WHERE t.name NOT IN (SELECT Name FROM tbl) 


-- Script 2 
INSERT INTO tbl (Name) 
    SELECT DISTINCT t.name 
    FROM #tt t 
    LEFT JOIN tbl t1 ON t.name=t1.name 
    WHERE t1.name IS NULL 
+0

Skript 1 fügt Null Datensätze ein aber Skript 2 fügt 2 Datensätze wie vorgesehen ein, warum "nicht in" hier nicht hilft? –

+0

Vielen Dank im Voraus für die Hilfe –

+0

Bitte schreiben Sie Ihre Frage richtig mit dem tatsächlichen Ergebnis und aktuellen Ergebnis. –

Antwort

Verwandte Themen