Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menjana Lajur Berjujukan Berdasarkan Kunci Asing dalam MySQL?

Bagaimana untuk Menjana Lajur Berjujukan Berdasarkan Kunci Asing dalam MySQL?

Susan Sarandon
Susan Sarandonasal
2024-11-18 20:17:02567semak imbas

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

Menambah Lajur Jujukan Berdasarkan Kunci Asing

Untuk mencapai lajur berjujukan berdasarkan kunci asing dalam MySQL, anda boleh menggunakan yang berikut Pendekatan SQL:

Buat pencetus sebelum memasukkan ke dalam jadual:

CREATE TRIGGER trg_mytable_bi
BEFORE INSERT ON mytable
FOR EACH ROW
BEGIN
      DECLARE nseq INT;

Dapatkan semula nombor jujukan sedia ada maksimum untuk kunci asing yang sepadan:

      SELECT  COALESCE(MAX(seq), 0) + 1
      INTO    nseq
      FROM    mytable
      WHERE   account = NEW.account;

Tetapkan nombor jujukan yang dikira pada baris baharu:

      SET NEW.seq = nseq;
END;

Dengan menggunakan pencetus ini, setiap baris yang baru disisipkan akan diberikan nombor urutan yang meningkat untuk yang ditentukan kunci asing, seperti yang digambarkan dalam contoh yang disediakan.

Atas ialah kandungan terperinci Bagaimana untuk Menjana Lajur Berjujukan Berdasarkan Kunci Asing dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn