我的大脑一片空白......我在尝试编写一个小脚本时遗漏了一些明显的东西:
我有一张带有各种 ID 的表:
TBL_USETHISID
nextid int
我有另一个参考表:
TBL_REFS
ref varchar(6)
thisdate datetime
nextid int
我想从 TBL_USETHISID 中获取 ID,然后更新 TBL_REFS,这样每一行的 ID 都比前一个多一个。然后,我将从 TBL_REFS 中选择 max(nextid) 并将 TBL_USETHISID 更新为最高值。
我对此有点挣扎,我们必须使用它而不是自动递增字段,因为这些 ID 用于多个表。
显然我已经尝试过:
UPDATE TBL_REFS FROM TBL_USETHISID
SET nextid = TBL_USETHISID.nextid + 1
感谢您提前提供的所有帮助。
编辑 - 样本数据:
TBLUSESID:
nextid
7001
TBL_REFS
ref thisdate nextid
0000123 2012-10-02 00:00:00
0000124 2012-10-02 00:00:00
0000125 2012-10-02 00:00:00
更新后:
TBL_REFS
ref thisdate nextid
0000123 2012-10-02 00:00:00 7001
0000124 2012-10-02 00:00:00 7002
0000125 2012-10-02 00:00:00 7003
然后我会 UPDATE TBL_USETHISID FROM TBL_REFS a set nextid = max(a.nextid)+1 来更新原始表。我希望我的格式是正确的,我认为代码是为了可读性。