-1

レコード内の整数フィールド FLD に 0、1、2、3 の連続値を入力する SQL ステートメントは何でしょうか?

これは、別のフィールドにプライマリ インデックスを持つ Firebird データベース内の既存の入力済みテーブルですが、そのプライマリ インデックス フィールドには FLD とは関係のない連続していない値があります。
現在、FLD に制限はなく、そのままにしておく必要があります。以前の値は上書きできます。

4

2 に答える 2

2

さらに検索した後、私はそれを見つけました(Sqlサーバーの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 に答える