我正在选择多行并将它们插入到另一个表中我想确保如果记录已经存在我想更新现有行或者只是插入新记录。
Table:
ID VALUE SOFid
3 44 5555
5 43 5555
8 88 8888
我的新记录是
INSERT INTO TABLE (6,88,5555)
INSERT INTO TABLE (1,89,5555)
INSERT INTO TABLE (5,99,5555)
INSERT INTO TABLE (8,76,5555)
如果我获得相同的 ID 我需要为现有记录添加价值,我该如何前进..
Proc for my query:
CREATE PROC Test
@ID INT,
@VALUE1 INT,
@@SFOid int
AS
BEGIN
IF @ID=(SELECT ID FROM Table WHERE ID= @ID AND SFOid=@SFOid)
BEGIN
UPDATE Rotation
SET value=@VALUE1+(SELECT value FROM Rotation WHERE ID=@ID AND SFOid=@SFOid)
WHERE ID=@ID AND SFOid=@SFOid
END
ELSE
INSERT INTO Table
VALUES(@ID,@VALUE1,@SFOid)
END