При использовании подзапросов, довольно часто начинающие специалисты делают похожие ошибки. Возможно, и я в свое время их делал, но не могу припомнить наверняка. Я заметил, что если ученикам в ходе обучения рассказать про типичные ошибки при написании подзапросов, то внимательные ученики их после этого не делают! Чуть позже, мне в руки попал сборник вопросов на собеседованиях по SQL в США и в одном из вопросов был написан запрос с использованием подзапроса в котором специально была допущена одна из таких типичных ошибок...
MERGE есть не во всех СУБД, да и подзапросы могут негативно сказаться на производительности. Хорошим решением вставки строк из одной таблицы в другую с предварительной проверкой отсутствия вставляющихся записей, является классический LEFT JOIN с проверкой во WHERE. Данный материал, по большей части, думаю, будет полезен специалистам службы внедрения и поддержки пользователей с техническим разбором возникших проблем, так как этим горячим головам на боевой базе в реальном времени приходится решать проблемы клиента...