Menukar Tatasusunan JSON kepada Baris dalam MySQL
Dalam MySQL 5.7, manipulasi JSON telah dipertingkatkan dengan hebat, menyediakan pelbagai fungsi untuk mengekstrak dan memproses data dalam struktur JSON. Walau bagaimanapun, operasi songsang untuk menukar tatasusunan JSON kepada baris tidak begitu mudah.
Tasusunan JSON kepada Baris
Untuk memasukkan baris bagi setiap elemen dalam tatasusunan JSON , pendekatan manual menggunakan berbilang pertanyaan JSON_EXTRACT() sebelum ini diperlukan. Tetapi dengan pengenalan fungsi JSON_TABLE dalam MySQL 8, proses ini telah menjadi lebih diselaraskan:
SELECT * FROM JSON_TABLE([5, 6, 7], '$[*]' COLUMNS( Value INT PATH '$' ));
JSON Array ke String yang dipisahkan koma
Untuk menukarkan Tatasusunan JSON ke dalam rentetan dipisahkan koma menggunakan GROUP_CONCAT(), silap mata boleh digunakan:
set @delimited = 'a,b,c'; SELECT * FROM JSON_TABLE( CONCAT('["', REPLACE(@delimited, ',', '", "'), '"]'), '$[*]' COLUMNS( Value varchar(50) PATH '$' ) );
Pendekatan ini menganggap rentetan yang dibataskan sebagai rentetan JSON, menghasilkan rentetan dipisahkan koma yang ditukar.
Fungsi STRING_SPLIT hilang
Walaupun MySQL tidak mempunyai fungsi STRING_SPLIT() khusus, fungsi JSON_TABLE boleh berfungsi sebagai pengganti bagi operasi belah, dengan berkesan memecahkan rentetan yang dibataskan kepada komponennya.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menukar tatasusunan JSON ke dalam baris dengan cekap dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!