MySQL で GROUP BY を使用しないクエリの集計
GROUP BY 句を指定せずにデータを集計するときに、クエリで構文エラーが発生しました。この動作は、データ集約の整合性を確保する取り組みの一環として MySQL 5.7.5 で導入されました。
エラー メッセージは、クエリ内の ID などの非集約カラムを SELECT に含めることができないことを説明しています。集計関数 (COUNT() など) が GROUP BY 句なしで使用される場合のリスト。これにより、集計結果の正確さと一貫性が保証されます。
エラーの解決
このエラーを解決するには、2 つのオプションがあります:
SELECT id, password, COUNT(id) AS count FROM users WHERE email = :email GROUP BY id, password LIMIT 1
または、非集計列 (id など) が WHERE 内の単一の値に制限されていることを確認できる場合は、句を使用する場合は、GROUP BY 句から除外できます。この例外の例については、提供されているリンクを参照してください。
これらの方法のいずれかを使用すると、エラーを解決し、MySQL クエリでデータを正しく集計できます。
以上がGROUP BY 句を使用しないと MySQL でクエリを集約できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。