Например, у меня 4 запроса (2 с обновлением и 2 с вставкой).
-- Query 1
UPDATE OrderProduct
SET Quantity = Quantity + 2,
TotalCost = (Quantity + 2) * Price
WHERE OrderProductId = 3333
-- Query 2
UPDATE OrderProduct
SET Quantity = Quantity + 5,
TotalCost = (Quantity + 5) * Price
WHERE OrderProductId = 4444
-- Query 3
INSERT INTO OrderProduct (ProductName, Quantity, Price, TotalCost)
VALUES ('Some Product', 3, 5.99, 3*5.99);
-- Query 4
INSERT INTO OrderProduct (ProductName, Quantity, Price, TotalCost)
VALUES ('Some Other Product ', 10, 1.99, 10*1.99);
Можно ли объединить это в одном запросе?Может быть, UNION
?
PS MS SQL не имеет DUPLICATE KEY UPDATE
UPD: или как я могу создать один UPDATE
запрос из двух разных запросов (как в примере) ?Что касается INSERT
- это проще.Я пытаюсь сократить ~ 200 отдельных запросов до одного или двух запросов.