Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyelesaikan Ralat MySQL #1140: 'Pencampuran lajur KUMPULAN' dalam Pertanyaan SQL Jauh?
Apabila menghadapi ralat "MySQL #1140 - Pencampuran lajur GROUP (MIN( ), MAX(), COUNT(),...) tanpa lajur GROUP adalah haram jika tiada GROUP BY klausa," ini menunjukkan bahawa pertanyaan SQL anda cuba untuk mencampurkan lajur berkumpulan (cth., COUNT()) dengan lajur bukan berkumpulan (cth., nid) tanpa menggunakan klausa GROUP BY.
Dalam kes khusus anda, isu timbul dalam pertanyaan SQL berikut:
SELECT COUNT(node.nid), node.nid AS nid, node_data_field_update_date.field_update_date_value AS node_data_field_update_date_field_update_date_value FROM node node LEFT JOIN content_type_update node_data_field_update_date ON node.vid = node_data_field_update_date.vid WHERE node.type IN ('update') ORDER BY node_data_field_update_date_field_update_date_value DESC
Untuk menyelesaikan isu tersebut, anda mempunyai dua pilihan:
SELECT COUNT(node.nid), node.nid AS nid, node_data_field_update_date.field_update_date_value AS node_data_field_update_date_field_update_date_value FROM node node LEFT JOIN content_type_update node_data_field_update_date ON node.vid = node_data_field_update_date.vid WHERE node.type IN ('update') GROUP BY nid, node_data_field_update_date_field_update_date_value ORDER BY node_data_field_update_date_field_update_date_value DESC
Dengan menggabungkan salah satu daripada penyelesaian ini, anda boleh menangani ralat "Pencampuran lajur KUMPULAN" dan berjaya melaksanakan pertanyaan SQL dalam persekitaran jauh.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat MySQL #1140: 'Pencampuran lajur KUMPULAN' dalam Pertanyaan SQL Jauh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!