Специальная команда MERGE языка SQL позволяет вставить данные в таблицу, если их там нет, и обновить, если они там есть.
Пример:
1 2 3 4 5 |
MERGE INTO SHOPS s USING (select 'OBSH' as code, 'Обочинский Магазин' as descr) as t2 ON (s.descr=t2.descr) WHEN MATCHED THEN UPDATE SET s.descr = t2.descr WHEN NOT MATCHED THEN INSERT (s.code, s.descr) VALUES (t2.code, t2.descr); |
Приведённый выше скрипт добавит запись с кодом “OBSH” и описанием «Обочинский Магазин», если записи с кодом “OBSH” нет, и обновит описание, если запись с таким кодом уже есть.