Saya telah memutakhirkan sistem saya dan telah menginstal MySql 5.7.9 dengan php untuk aplikasi web yang sedang saya kerjakan. Saya memiliki permintaan yang dibuat secara dinamis, dan ketika dijalankan di versi MySql yang lama, ia berfungsi dengan baik. Sejak meningkatkan ke 5.7 saya mendapatkan kesalahan ini:
Ekspresi # 1 dari daftar SELECT tidak dalam klausa GROUP BY dan berisi kolom 'support_desk.mod_users_groups.group_id yang tidak diagregasi' yang tidak secara fungsional bergantung pada kolom dalam klausa GROUP BY; ini tidak kompatibel dengan sql_mode = only_full_group_by
Perhatikan halaman Manual untuk Mysql 5.7 tentang topik Mode SQL Server .
Ini adalah pertanyaan yang membuat saya kesulitan:
SELECT mod_users_groups.group_id AS 'value',
group_name AS 'text'
FROM mod_users_groups
LEFT JOIN mod_users_data ON mod_users_groups.group_id = mod_users_data.group_id
WHERE mod_users_groups.active = 1
AND mod_users_groups.department_id = 1
AND mod_users_groups.manage_work_orders = 1
AND group_name != 'root'
AND group_name != 'superuser'
GROUP BY group_name
HAVING COUNT(`user_id`) > 0
ORDER BY group_name
Saya melakukan beberapa googling tentang masalah ini, tetapi saya tidak only_full_group_by
cukup mengerti untuk mencari tahu apa yang harus saya lakukan untuk memperbaiki kueri. Bisakah saya mematikan only_full_group_by
opsi, atau ada hal lain yang perlu saya lakukan?
Beri tahu saya jika Anda membutuhkan informasi lebih lanjut.
not a GROUP BY expression
" Itu dia. Mereka mungkin juga hanya memiliki kode kesalahan numerik dan tidak ada pesan sama sekali.