where, group by, havingとかの評価(優先)順位

where -> group by -> having -> select -> order by

の順で評価するのでhavingにはselectでつけた別名を指定できない。order byには指定できる。

例:年が2010以降で名前ごとの件数が1より大きいものを大きい順で表示。

select name, count(*) cnt
  from TBL
 where year >= '2010'
 group by name
having count(*) > 1
 order by cnt desc
;