我该如何获取批量更新中受影响行的ID?因为我想把所有的更新/事务插入到tbl.history表中。
以下是我的示例表:
Original Answer翻译成“最初的回答”
table tbl.myTable
+------+-----------+------------+
| ID | Amount | Date |
+------+-----------+------------+
| 1 | 100 | 01/01/2019 |
+------+-----------+------------+
| 2 | 200 | 01/02/2019 |
+------+-----------+------------+
| 3 | 500 | 01/01/2019 |
+------+-----------+------------+
| 5 | 500 | 01/05/2019 |
+------+-----------+------------+
这是我的批量更新查询:
Update tbl.myTable set Amount = 0 where Date = '01/01/2019'
使用这个查询将会更新/影响ID为1和3的两条数据。我该如何获取这些ID并将它们插入到另一个表(tbl.history)中?
最初的回答:
你可以在更新查询之前先查询一次,以获取要更新的记录的ID。然后,将这些ID插入到tbl.history表中。
TRIGGERS
https://learn.microsoft.com/zh-cn/sql/t-sql/statements/create-trigger-transact-sql?view=sql-server-2017 - undefined