我有一个字段值相同的表(0)。我想从-1开始按顺序重新编号。此字段值大约有1800行。有没有办法用查询来做到这一点?如果我不需要,我宁愿不使用VBA来完成这项任务。
答案 0 :(得分:0)
您可以使用自动编号字段生成数字。
由于您需要编号的字段中的行具有不同于0的值,因此它会变得草率。您将提取'0'行,将它们放置一个具有自己的自动编号字段的临时表(起始值1,递增+1),运行此查询(对于此示例,它将被称为newnum_qry)。
SELECT autonumber, autonumber-(autonumber*2) as newnumber , [your other columns]
FROM int_tbl
然后将行返回到原始表,从后面的临时表中保留自动编号。查询重新合并:
SELECT source_of_zeroes, null as newnumber, [your other columns]
FROM orig_tbl
WHERE source_of_zeroes != 0
UNION
SELECT source_of_zeroes, newnumber, [your other columns]
FROM newnum_qry
这是解决方案,IMO,真的很垃圾。应该有更好的方法,但在Access中通常就是这种情况,垃圾可能是你能做到的最好的。