-1

用连续值 0,1,2,3... 在记录中填充整数字段 FLD 的 SQL 语句是什么?

它是 Firebird 数据库中现有且已填充的表,在另一个字段上具有主索引,但该主索引字段具有与 FLD 无关的非顺序值。
目前对 FLD 没有任何限制,应该保持这种状态。可以覆盖以前的值。

4

2 回答 2

2

经过更多搜索后,我找到了它(感谢将顺序值分配给 Sql server 中的 ID 列中的答案):

UPDATE tt_calendar c1
SET tt_taskindex=(SELECT COUNT(*) FROM tt_calendar c2 
WHERE c2.tt_calendar_id < c1.tt_calendar_id)+1

tt_calendar 是我的表名
tt_taskindex 是要更新的FLD
tt_calendar_id 是主键字段

于 2013-10-03T09:52:33.287 回答
0

如果您的数据库支持,请创建一个序列,然后:

update TABLE set FLD = SEQUENCE.nextval;

如果再次运行该命令,请务必重置序列。

于 2013-10-03T09:51:19.810 回答