ALTER TRIGGER [dbo].[killertrigg]
ON [dbo].[tbl_pvporderview]
AFTER UPDATE
AS
IF (UPDATE([Kill]))
BEGIN
SET NOCOUNT ON;
INSERT killer(serial,[Kill])
SELECT i.serial,i.[Kill] FROM inserted AS i
INNER JOIN deleted AS d
ON i.serial = d.serial
AND i.[Kill] <> d.[Kill] AND i.[Kill] > 0;
END
No entanto, como eu faria se desejasse atualizar se o serial já existisse na killer
tabela. Poderia atualizar primeiro e, se retornar o número de linhas 0/nulo, insira, mas fiquei preso ONDE - já que não posso usar i.serial = d.serial
para comparar lá.
Que tal mudar o gatilho para um BEFORE UPDATE? Dessa forma, você pode verificar os valores antes que qualquer ação ocorra.
EDITAR
OK, então acho que entendo o que você está tentando fazer. Que tal agora: