SELECT文で集計関数(SUMやMAX等)を使用したクエリの検索結果が無い場合、group byの有無でレコードの返りが違う事を発見。
業務でハマった為、ここに忘備録として残しておきます。
環境
- 使用したDBのバージョン等
- テーブル構造
SELECT 集計関数(列名) FROM ~ GROUP BYの場合
- group by句を用いた場合は、レコードが一行も返却されない
SELECT 集計関数(列名) FROM ~ の場合
- group by句を用いない場合、必ず一行レコードが返却される。
その他
- 元々はOracleDBで確認した事象だったが、MySQLでも再現した(標準仕様?)
あとがき
- これ見つけるのに時間かかった……。