Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menetapkan Nombor Urutan ke Lajur Jadual dalam MySQL?

Bagaimana untuk Menetapkan Nombor Urutan ke Lajur Jadual dalam MySQL?

Susan Sarandon
Susan Sarandonasal
2024-12-20 19:46:14979semak imbas

How to Assign Sequential Numbers to Table Columns in MySQL?

Menetapkan Nombor Berjujukan kepada Lajur Jadual dalam MySQL

Andaikan anda mempunyai jadual MySQL dengan lajur bernama 'Nama' dan 'Nombor', di mana lajur 'Nombor' pada masa ini mengandungi nilai nol. Matlamatnya adalah untuk menetapkan nombor berjujukan bermula dari 1 hingga lajur 'Nombor' untuk setiap baris dalam jadual. Ini boleh dicapai menggunakan arahan SQL berikut:

SET @rank:=0;
update T
set Number=@rank:=@rank+1;

Penjelasan:

  • Pernyataan SET memulakan pembolehubah takrif pengguna @peringkat kepada 0.
  • Penyata kemas kini mengemas kini lajur 'Nombor' dalam jadual T, menambah pembolehubah @rank sebanyak 1 untuk setiap baris.
  • Apabila penyataan berulang melalui baris dalam jadual, pembolehubah @rank menjejaki nombor jujukan, memastikan setiap baris diberikan nombor unik.

Kaedah Alternatif:

Sebagai alternatif, anda boleh menggunakan satu pernyataan SQL dengan subquery:

UPDATE T
JOIN (SELECT @rank := 0) r
SET Number=@rank:=@rank+1;

Nota:

Untuk jadual dengan bilangan baris yang banyak, adalah dinasihatkan untuk membuat lajur tambahan dengan atribut AUTO_INCREMENT dan bukannya bergantung pada pembolehubah atau subkueri yang ditentukan pengguna.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Nombor Urutan ke Lajur Jadual 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