小编典典

触发将来自另一个表的“占用总和”插入到表中

sql

我有这两个表:

。

AUX表中的数据具有重复的日期,而表a中的数据必须具有无重复的日期,但必须添加重复日期的总数。

ej。2017年5月1日= 123 + 123 + 123。

我认为,当aux表中的数据包含新数据时,触发器应该可以完成这项工作。


阅读 147

收藏
2021-04-15

共1个答案

小编典典

CREATE TRIGGER [dbo].[trgAfterInsert] ON [dbo].[Table_a_aux] 
After Insert
AS
BEGIN

Declare @dDate as Date;
Declare @iTotal as int;

Select 
    @dDate = i.[date],
    @iTotal = i.total
From inserted i;


IF EXISTS (Select [date] from Table_a where [date] = @dDate) 
BEGIN
Update Table_a 
    SET total = total + @iTotal
WHERE
    [date] = @dDate
END
ELSE 
BEGIN
INSERT INTO Table_a ([date],total) Values (@dDate,@iTotal)
END
2021-04-15