Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menjana Nombor Alfanumerik Unik dengan Menggabungkan Lajur MySQL?
Menggabungkan Lajur MySQL untuk Penjanaan Nombor Unik
Apabila bekerja dengan jadual MySQL, mungkin perlu menjana nombor unik yang menggabungkan data daripada berbilang lajur. Dalam senario di mana jadual mengandungi dua lajur bernama SUBJECT dan YEAR, objektifnya adalah untuk mencipta nombor unik alfanumerik yang menggabungkan nilai kedua-dua medan.
Satu pendekatan untuk mencapai ini adalah melalui fungsi CONCAT, seperti yang ditunjukkan dalam kod berikut:
SELECT CONCAT(`SUBJECT`, ' ', `YEAR`) FROM `table`
Pertanyaan ini akan menggabungkan nilai lajur SUBJECT dan YEAR, dipisahkan oleh ruang. Walau bagaimanapun, untuk mencipta nombor unik, kaedah yang lebih rumit diperlukan.
Penyelesaian alternatif melibatkan penggunaan gabungan LPAD dan pembolehubah untuk menjana akhiran yang unik. Pertanyaan yang dikemas kini adalah seperti berikut:
SET @rn := 0; SELECT CONCAT(`SUBJECT`,'-',`YEAR`,'-',LPAD(@rn := @rn+1,3,'0')) FROM `table`
Pertanyaan ini mula-mula memulakan pembolehubah bernama @rn kepada 0. Ia kemudian menggabungkan nilai SUBJECT dan YEAR, menambahkan tanda sempang sebagai pemisah. Akhir sekali, ia menggunakan fungsi LPAD untuk mengepad kiri nilai tambah @rn dengan sifar untuk mencapai panjang konsisten tiga aksara.
Dengan melaksanakan pendekatan ini, nombor abjad angka unik boleh dijana untuk setiap baris dalam jadual MySQL, menggabungkan data daripada kedua-dua lajur SUBJECT dan YEAR.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Nombor Alfanumerik Unik dengan Menggabungkan Lajur MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!