Ya, itu biasa.
Anda tidak boleh selalu bergantung pada urutan pengembalian bidang yang tidak dikelompokkan dan yang tidak digabungkan.
GROUP_CONCAT
memiliki ORDER BY
klausa yang diperhitungkan oleh pengoptimal dan dapat mengubah urutan penguraian catatan.
Untuk mengembalikan catatan pertama bersama dengan GROUP_CONCAT
, gunakan ini:
SELECT m.*, gc
FROM (
SELECT id, MIN(date) AS mindate, GROUP_CONCAT(tags) AS gc
FROM myview
GROUP BY
id
) md
JOIN m.*
ON m.id = md.id
AND m.date = md.mindate