Bolehkah MySQL Memisahkan Rentetan Dipisahkan Koma Menjadi Jadual Suhu?
Memisahkan rentetan yang dipisahkan koma ke dalam jadual sementara ialah tugas biasa dalam manipulasi data . Walaupun MySQL tidak mempunyai fungsi terbina dalam untuk tugas ini, ia boleh dicapai menggunakan kaedah alternatif.
Satu pendekatan melibatkan penciptaan fungsi yang ditentukan pengguna yang melaksanakan pemisahan rentetan. Fungsi SPLIT_STR daripada jawapan yang disediakan boleh digunakan untuk tujuan ini. Ia secara berulang mengekstrak subrentetan berdasarkan pembatas dan kedudukan, mengembalikan rentetan kosong apabila tiada padanan ditemui.
Untuk mengulangi rentetan pisah dan mengisi jadual sementara, gelung boleh digunakan. Gelung FOR boleh digunakan untuk memanggil fungsi SPLIT_STR secara berperingkat dan hasilnya boleh dimasukkan ke dalam jadual sementara menggunakan pertanyaan INSERT.
Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa pendekatan ini memerlukan pengekodan tersuai dan pengetahuan tentang gelung MySQL sintaks. Penyelesaian alternatif ialah dengan menggunakan bahasa skrip seperti PHP atau Python untuk melakukan pemisahan rentetan dan memasukkan hasilnya ke dalam jadual sementara.
Berikut ialah kod untuk gelung MySQL yang berulang pada rentetan pemisah dan sisipan nilai ke dalam jadual sementara:
DELIMITER $$ CREATE PROCEDURE ABC(fullstr) BEGIN DECLARE a INT Default 0 ; DECLARE str VARCHAR(255); simple_loop: LOOP SET a=a+1; SET str=SPLIT_STR(fullstr,"|",a); IF str='' THEN LEAVE simple_loop; END IF; #Do Inserts into temp table here with str going into the row insert into my_temp_table values (str); END LOOP simple_loop; END $$
Atas ialah kandungan terperinci Bolehkah MySQL Membahagikan Rentetan Dipisahkan Koma ke dalam Jadual Sementara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!