Я делаю множественную вставку в SQL Server, используя UNION ALL между вставками. В последней части запроса у меня есть предложение WHERE. Теперь кажется, что предложение WHERE выполняется перед каждым оператором, но я хочу, чтобы WHERE выполнялся только один раз. Если предложение WHERE имеет результат, то ни одна из вставок не должна выполняться.
Для иллюстрации, вставьте несколько человек в таблицу, если какие-либо записи существуют с одним из определенных возрастов, ни одна из вставок не должна выполняться.
INSERT INTO mytable
select 1, 33,john UNION ALL
select 2, 28,james UNION ALL
select 3, 20,Harry UNION ALL
WHERE NOT EXISTS (SELECT 1 FROM mytable where age in(22,28,30))
Как мне это сделать?