MySQLのWHEREではなく、HAVINGの後に自分で作成した列(たとえば、「数値として1を選択」)を配置する必要があるのはなぜですか?
WHERE GROUP BYの前に適用されます 、HAVING 後に適用されます(集約でフィルタリングできます)。
一般に、これらの句のどちらでもエイリアスを参照できませんが、MySQL SELECTの参照を許可します GROUP BYのレベルエイリアス 、ORDER BY およびHAVING 。
また、「WHERE 1」(列名の代わりに定義全体を記述する)を実行する代わりに、欠点はありますか?
計算された式に集計が含まれていない場合は、それをWHEREに配置します 条項はおそらくより効率的です。