INSERT INTO @table(a,b,c,d)
SELECT a,b,c,d
FROM table1
UNION
SELECT a,b,c,d
FROM table2
U hoeft de clausule Values niet te gebruiken bij het invoegen van gegevens met de SELECT-instructie. Daarom heb ik de VALUES
. verwijderd bit uit en doe gewoon een UNION van rijen die worden geretourneerd door beide SELECT-query's.
Sql-server ondersteunt de syntaxis voor INSERT-instructies zoals
INSERT INTO Table_Name(Col1, COl2. Col3...)
SELECT Col1, COl2. Col3...
FROM Other_Table_Name
Hiermee wordt de resultaatset die door de select-instructie is geretourneerd, in de doeltabel ingevoegd. In jouw geval is het resultaat een UNION van twee selects, dus het is niet anders dan een enkele select.