MySQL エラーは、sal モードと互換性がありません = ソリューションごとの完全なグループのみです

問題文

このエラーは、グループ化をクエリするときにグループ化されていないフィールドが表示されるために報告されます。例:

select id , user_name from user group by user_name;

上記のステートメントは、id フィールドと user_name フィールドをクエリします。User_name はグループ化されていますが、id はグループ化されていません。この時点で、mysql は上記のエラーを報告します。

解決

他のブログ投稿では多くの方法が言及されていますが、ここでは最も実用的な方法を書き留めます。
mysql インストール ディレクトリで my.ini ファイルを見つけます。Win システム用の mysql インストール バージョンがあるかどうかはわかりません。
通常、mysql バージョンを解凍してからインストールを初期化するため、この my.ini ファイルが存在する必要があります。
設定ファイルは次の形式になります。

[mysqld]
配置...
[mysql]
配置...
[client]
配置...

以下に[mysqld]追加します。sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
追加後は閉じても構いません。only_full_group_by
追加が完了すると次のようになります。

[mysqld]
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
其它配置....
[mysql]
配置...
[client]
配置...

間違いを犯しやすい

追加位置が間違っています。必ず[mysqld]一番下に。
…そのまま次のページにコピーしたの[mysql]ですが、mysqlサービスを再起動してもダメで、これに20分もかかりました…。

おすすめ

転載: blog.csdn.net/weixin_44223509/article/details/132853308
おすすめ