Следующее:
MERGE dbo.commissions_history AS target
USING (SELECT @amount, @requestID) AS source (amount, request)
ON (target.request = source.request)
WHEN MATCHED THEN
UPDATE SET amount = source.amount
WHEN NOT MATCHED THEN
INSERT (request, amount)
VALUES (source.request, source.amount);
из qaru.site/info/104540/... - довольно изящный способ сделать вставку/обновление (и удалить с помощью некоторой дополнительной работы). Мне трудно следовать, хотя даже после некоторых поисковых запросов.
Кто-то может:
- объясните это немного простыми словами - документация MSDN исказила мой мозг в этом случае.
- показать мне, как он может быть изменен, чтобы пользователь мог вводить значения для суммы и запроса вместо того, чтобы их выбрали из другого местоположения базы данных?
В принципе, я хотел бы использовать это для вставки/обновления из приложения С# с информацией, полученной из файлов XML, которые я получаю. Итак, мне нужно понять, как я могу сформулировать запрос вручную, чтобы получить мои проанализированные данные в базе данных с помощью этого механизма.