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 .