Penukaran Jadual Hasil MySQL kepada Tatasusunan JSON Menggunakan Perintah Biasa
Dalam MySQL, adalah mungkin untuk menukar jadual hasil kepada tatasusunan JSON menggunakan fungsi terbina dalam. Pertimbangkan pertanyaan berikut:
SELECT name, phone FROM person;
Yang mengembalikan jadual hasil berikut:
name | phone |
---|---|
Jack | 12345 |
John | 23455 |
Penyelesaian Baharu:
Menggunakan JSON_ARRAYAGG dan JSON_OBJECT, pertanyaan berikut mencapai JSON yang dikehendaki output:
SELECT JSON_ARRAYAGG(JSON_OBJECT('name', name, 'phone', phone)) from Person;
Fungsi JSON_ARRAYAGG mengagregatkan berbilang objek JSON ke dalam tatasusunan, manakala fungsi JSON_OBJECT mencipta objek dengan pasangan nilai kunci yang ditentukan.
Penyelesaian Lama:
Sebagai alternatif, anda boleh menggunakan CONCAT, GROUP_CONCAT dan JSON_OBJECT berfungsi untuk membina tatasusunan JSON:
SELECT CONCAT( '[', GROUP_CONCAT(JSON_OBJECT('name', name, 'phone', phone)), ']' ) FROM person;
Fungsi CONCAT menggabungkan rentetan, GROUP_CONCAT mengagregatkan objek JSON ke dalam senarai yang dipisahkan koma dan JSON_OBJECT mencipta objek individu>.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Jadual Keputusan MySQL kepada Tatasusunan JSON Menggunakan Perintah SQL Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!