MySQL 5.7 で ONLY_FULL_GROUP_BY がデフォルトになる、というのに対応するとかしないとか、そんな話。
基本的に 5.6 を使うことが多いんだけど、5.7 に上げてみたら ONLY_FULL_GROUP_BY 関係でエラーがちょこちょこ出ることがある。 GROUP BY してないやつは適当で良いんだよ、と思いながら SQL の構造を見直したりしていたのだが、 マニュアルに ANY_VALUE() という関数を見つけた。 適当に選んだ値を返してくれる、ONLY_FULL_GROUP_BY を disable にしたのと同じ効果が得られるという。
なんだ。 これでいいじゃん。
と思ったが、5.6 にはこの関数が見当たらなかった。 できるだけバージョンに依存しないようにコードを保っておきたいので、使うわけにいかない。 残念ながら。
ほんとうに残念だよ。
ラベル:MySQL