sql >> データベース >  >> RDS >> Mysql

WHERE vs HAVING

    MySQLのWHEREではなく、HAVINGの後に自分で作成した列(たとえば、「数値として1を選択」)を配置する必要があるのはなぜですか?

    WHERE GROUP BYの前に適用されます 、HAVING 後に適用されます(集約でフィルタリングできます)。

    一般に、これらの句のどちらでもエイリアスを参照できませんが、MySQL SELECTの参照を許可します GROUP BYのレベルエイリアス 、ORDER BY およびHAVING

    また、「WHERE 1」(列名の代わりに定義全体を記述する)を実行する代わりに、欠点はありますか?

    計算された式に集計が含まれていない場合は、それをWHEREに配置します 条項はおそらくより効率的です。



    1. PostgreSQLデータベース列から数値以外の値を返す

    2. Mysqlは2つのテーブルに挿入します

    3. MySQLで日時形式を変更する方法

    4. customer.pk_name参加transactions.fk_name対customer.pk_id[シリアル]参加transactions.fk_id[整数]