SQL Server: INSERT WHERE NOT EXISTS
Because whenever I’ve been away from SQL Server for more than a couple of weeks, I forget.
/* Some tables. */ CREATE TABLE X ( Name VARCHAR(20) ) GO CREATE TABLE Y ( Name VARCHAR(20) ) GO
/* Some sample data. */ INSERT INTO X(Name) VALUES('Alice') INSERT INTO Y(Name) VALUES('Alice') INSERT INTO Y(Name) VALUES('Bob') INSERT INTO Y(Name) VALUES('Bob') INSERT INTO Y(Name) VALUES('Charles')
/* The interesting bit. */ INSERT INTO X(Name) SELECT DISTINCT Name FROM Y WHERE NOT EXISTS ( SELECT * FROM X WHERE X.Name = Y.Name )