我正在创建一个查询,其中我已经从表1中创建了选择查询,然后将值插入到表2中,但是如何创建一个命令,当新数据进入表1时,便要更新表2的值 并且这种插入每天都在工作中发生。
我尝试创建触发器,但是我不知道如何将其与我的场景相关联
IF OBJECT_ID('TEMPDB..#temp')IS NOT NULL
DROP TABLE #temp
Select Getdate()[Data Till],Sum[Quantity] Qty
into #temp from XYZ w
here w.Date <=Getdate()
Insert into dbo.table1
Select [Data Till],Qty from #temp >
截至目前,数据如表2所示
1)[Data Till]-2019/05/22 Qty-100
2)[Data Till]-2019/05/23 Qty-150
3)[Data Till]-2019/05/24 Qty-120
现在如果表1中出现了2019年5月22日的日期为-20的回溯条目,表2将如何更新表2中的值怎么办
1)[Data Till]-2019/05/22 Qty-80
2)[Data Till]-2019/05/23 Qty-150
3)[Data Till]-2019/05/24 Qty-120
答案 0 :(得分:0)
按我的假设
更新意味着您已经具有表2中的数据。如果表1中有新数据,您要进行哪种更新? 是现有数据更新还是新记录插入然后更新。 从您的问题是否可以更新以上两种情况 为此,为什么要有两个写入插入触发器
创建触发器abc
在桌子1上
用于插入
如
开始
-更新table2
结束
答案 1 :(得分:0)
CREATE TRIGGER [schema_name.]trigger_name
ON Table_name
AFTER INSERT
AS
BEGIN
-- write your update statement here
END
这是当您在“ Table_name”中插入新行时,在执行“ BEGIN”和“ END”之间的语句的更新触发器之后编写的方法。