homebrewというか、homebrewでインストールしたMySQLなのですが・・・
レガシーな(?)環境もあって、かなりいい加減な古いクエリがあるわけです。笑
なにが問題になったかというと・・・
SELECT list is not in GROUP BY clause and contains nonaggregated column
などというエラーが!
- GROUP BY で指定が無いカラムをSELECT 句で使っている
- 日付に0000−00−00 がある
の二つです。
GROUP BY については、10数年前の方言バリバリの大らかなMySQLだと許していたという衝撃的な・他のDB利用者にバカにされていた(?)部分ですね。
で、クエリをきちんと書き換えるのが正解なのですが・・・
メチャクチャ多く書き換えが発生します!
できるなら、バクトゥザパストしてと思っていたら・・・・
あった!!!これです。
SET GLOBAL sql_mode = 'STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
これで解決です。(^_^)☆
一旦というか、レガシーなプログラムなのでこれで急場を凌いでOKにします。
2025-06-04追記
MySQL再起動の度にコマンドは面倒なので、my.cnf に下記を追記
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
mysqlx-bind-address = 127.0.0.1
sql_mode = 'STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
OK!!!これで理想(?)通り(^_^)