Anda memerlukan fungsi gabungan seperti CONCAT_WS()
dan CONCAT
untuk menggabungkan kolom setiap baris dan kemudian agregasi dengan GROUP_CONCAT()
untuk setiap name
:
SELECT CONCAT('[', GROUP_CONCAT(CONCAT('(', CONCAT_WS(',', name, device, passed, failed), ')')), ']') AS result
FROM results
GROUP BY name
Lihat demo .