ホームページ > データベース > mysql チュートリアル > MySQL でテーブルの列に連番を割り当てるにはどうすればよいですか?

MySQL でテーブルの列に連番を割り当てるにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-20 19:46:14
オリジナル
977 人が閲覧しました

How to Assign Sequential Numbers to Table Columns in MySQL?

MySQL のテーブル列への連番の割り当て

「Name」と「Number」という名前の列を持つ MySQL テーブルがあるとします。 「数値」列には現在 null 値が含まれています。目標は、テーブルの各行の「番号」列に 1 から始まる連続番号を割り当てることです。これは、次の SQL コマンドを使用して実行できます。

SET @rank:=0;
update T
set Number=@rank:=@rank+1;
ログイン後にコピー

説明:

  • SET ステートメントは、ユーザー定義変数 @rank を 0 に初期化します。
  • update ステートメントは、テーブル T の「Number」列を更新し、それぞれ @rank 変数を 1 ずつ増分します。 row.
  • ステートメントがテーブル内の行を反復処理する際、@rank 変数はシーケンス番号を追跡し、各行に一意の番号が割り当てられるようにします。

代替方法:

または、単一の SQL ステートメントを使用することもできます。 subquery:

UPDATE T
JOIN (SELECT @rank := 0) r
SET Number=@rank:=@rank+1;
ログイン後にコピー

注:

行数が多いテーブルの場合は、 AUTO_INCREMENT 属性に依存するのではなく、追加の列を作成することをお勧めします。ユーザー定義変数またはサブクエリ。

以上がMySQL でテーブルの列に連番を割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート