ホームページ >データベース >mysql チュートリアル >MySQL 列に連番を割り当てるにはどうすればよいですか?
MySQL でシーケンス番号を使用した列の更新
問題: MySQL テーブルに「Number」という名前の列が含まれています現在、複数の行に null 値が保持されています。タスクは、1 から n の範囲の連続番号でこの列を更新することです。ここで、n は行の合計数を表します。
解決策:
この更新を実行するには単一の SQL コマンドで、SET ステートメントと update ステートメントを組み合わせて使用できます。
SQLコマンド:
SET @rank := 0; update T set Number = @rank := @rank + 1;
説明:
この SQL コマンドは 2 つの異なる部分で構成されます:
代替方法 (1 つのステートメント):
この更新を実行するために利用できる代替アプローチ単一のステートメントでは:
UPDATE T JOIN (SELECT @rank := 0) r SET Number = @rank := @rank + 1;
注:
どちらのメソッドも効果的に Number 列を 1 から n までの連続番号で更新します。ここで、n は行の合計数を表します。 T テーブル。
以上がMySQL 列に連番を割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。