Memisahkan Nilai Dipisahkan Koma dengan Ungkapan Jadual Biasa SQLite
Soalan:
Bagaimana boleh Saya dengan mudah membahagikan rentetan yang dipisahkan koma dalam lajur Kategori bagi SQLite meja? Saya mencari pendekatan yang lebih mudah daripada menggunakan Replace() dan Trim() dan mengelakkan pengehadan substr().
Jawapan:
SQLite menawarkan ciri yang dipanggil Common Table Ungkapan (CTE) yang membenarkan pertanyaan rekursif, menjadikannya mudah untuk memisahkan nilai yang dipisahkan koma. Berikut ialah pecahan:
Pertanyaan:
WITH split(word, csv) AS ( SELECT '', 'Auto,A,1234444'||',' UNION ALL SELECT substr(csv, 0, instr(csv, ',')), substr(csv, instr(csv, ',') + 1) FROM split WHERE csv != '' ) SELECT word FROM split WHERE word!='';
Penjelasan:
Output:
Auto A 1234444
Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan Dipisahkan Koma dengan Cekap dalam SQLite Menggunakan CTE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!