ホームページ > データベース > mysql チュートリアル > MySQL で外部キーに基づいてシーケンシャル列を生成するにはどうすればよいですか?

MySQL で外部キーに基づいてシーケンシャル列を生成するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-18 20:17:02
オリジナル
568 人が閲覧しました

How to Generate a Sequential Column Based on a Foreign Key in MySQL?

外部キーに基づいたシーケンス列の追加

MySQL で外部キーに基づいてシーケンス列を実現するには、次を使用できます。 SQL アプローチ:

テーブルに挿入する前にトリガーを作成します:

CREATE TRIGGER trg_mytable_bi
BEFORE INSERT ON mytable
FOR EACH ROW
BEGIN
      DECLARE nseq INT;
ログイン後にコピー

対応する外部キーの既存の最大シーケンス番号を取得します:

      SELECT  COALESCE(MAX(seq), 0) + 1
      INTO    nseq
      FROM    mytable
      WHERE   account = NEW.account;
ログイン後にコピー

計算されたシーケンス番号を新しい行に追加します:

      SET NEW.seq = nseq;
END;
ログイン後にコピー

このトリガーを利用すると、新しく挿入された各行に、指定された外部キーごとに増加するシーケンス番号が割り当てられます。

以上がMySQL で外部キーに基づいてシーケンシャル列を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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