Я не силен в БД, и в триггерах особенно.
Надо сделать так, что бы триггер отрабатывал и на многострочный UPDATE (UPDATE, который затрагивает сразу много строк).
Сейчас он выглядит так и работает только если обновлять строку по одной:
DECLARE @newid INT
DECLARE @brutto money
DECLARE @discount money
DECLARE @ean NVARCHAR(13)
SELECT @newid=id FROM inserted
SELECT @ean = [ean] FROM inserted
SELECT @brutto = [brutto] FROM inserted
SELECT @discount = [discount_percent] FROM inserted
IF UPDATE(discount_percent)
BEGIN
UPDATE FirstTable
SET discount = brutto - (brutto*@discount/100)
WHERE id = @newid
IF ((SELECT COUNT(*) FROM SecondTable
WHERE Product_ID = @ean) > 0)
BEGIN
UPDATE SecondTable
SET Discount=@discount
WHERE Product_ID = @ean
END
ELSE
BEGIN
IF (@discount > 0)
BEGIN
INSERT INTO SecondTable
(Product_ID, Quantity, Discount) VALUES (@ean, 1, @discount)
END
END
END
Структура старая и мне её никак не изменить. Код тоже достался в наследство

Смысл действа такой, что если поменялась скидка — пересчитать окончательную сумму со скидкой в одной таблице,
и обновить/добавить запись относительно скидки на этот товар в другой таблице.
Если первый UPDATE я еще понимаю как сделать:
UPDATE FirstTable
SET discount = brutto - (brutto*@discount/100)
WHERE id IN (SELECT id FROM inserted)
то как мне сделать проверку на существование соответствующих записей во второй таблице и обновлении её (или добавлении туда отсутствующих записей)?