Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
yemets63 Member Откуда: Самара Сообщений: 1394 |
немного после Oracle спотыкаюсь в порядке вещей, делаю триггер и далее по тексту merge into TABLE2 as trget using ( select TABLE1_POLE1 from TABLE_1 ) as source ON (source.TABLE1_POLE1 = target.TABLE2_POLE1) AND (source.TABLE1_POLE2 = target.TABLE2_POLE2) =========================== далее какие нибудь условия, типа WHERE AND OR для source, например AND (source.TABLE1_POLE3 is not null ===========================------------------------ далее WHEN MATCHED AND (source.*****)) THEN UPDATE set WHEN NOT MATCHED and (soure.******) THEN INSERT (targget values) VALUES (source.values) END GO надеюсь понятно! Теперь Вопрос? при выполнении INSERT (targget values) VALUES (source.values) END триггер возьмет значения согласно условия описанного выше ON (source.TABLE1_POLE1 = target.TABLE2_POLE1) AND (source.TABLE1_POLE2 = target.TABLE2_POLE2) =========================== далее какие нибудь условия, типа WHERE AND OR для source, например AND (source.TABLE1_POLE3 is not null или нужно писать в INSERT (targget values) VALUES (source.values) ENDне просто список полей от source на полноценный запрос select * from table where ??? |
24 сен 19, 13:58 [21977907] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
yemets63, inserted/deleted изучите для триггеров |
24 сен 19, 14:03 [21977914] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47052 |
Кстати, TABLE1_POLE3 тоже. |
||
25 сен 19, 11:47 [21978759] Ответить | Цитировать Сообщить модератору |
yemets63 Member Откуда: Самара Сообщений: 1394 |
всем спасибо, всё прекрасно, я не могу весь запрос преретаскивать , сотня строк, смысла нет. всё работает, конечно не привычно после Oracle, просто в моем случае по условию скобку не там поставил, не увидел, ну и начал плясать с бубном с просьбой о помощи |
26 сен 19, 10:22 [21979509] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |