【发布时间】:2014-04-29 09:48:31
【问题描述】:
我有一张桌子
Table A (ID,RecNo, Old,New)
Table B (ID,AuditDate,Event)
当我的TableA.ID = TableB.ID 时,我怎样才能使 RecNo 的增量变为1,2,3。我正在做审计触发器。例如,如果我更新系统上的 3 个字段。
TableA.ID 必须与 TableB.ID 相同,并且由于我更新了 3 个字段,假设 ID 为 10,RecNo 将具有 1,2,3 并存储旧值和新值。每次事件发生时,ID 都会自动递增。如果有另一个 ID,则 RecNo 将再次从 1 开始。我试过@recNo = @recNo + 1,但这个数字一直在跳跃。有没有大家都知道的指南??
【问题讨论】:
-
查询表时使用
IDENTITY和SELECT ROW_NUMBER() OVER (PARTITION BY ID ORDER BY GlobalID) as RecNo, ...分配全局递增值要容易得多。
标签: sql sql-server integer increment