投資家たぬきちのブログ

地方×都会のデュアルライフとシンプルライフを実践する、兼業投資家のたぬきちだよ

group by句とorder by句の順番等備忘録Oracle SQL

group by句とorder by句は、一緒に指定できる。

 

これらの順番は通常

group by が先で

order by が後である

 

なぜなら、group byで集計したら、Order byの意味がなくなってしまう。

てか、Order by句はSELECT文の最後に書く。

 

なお、group by句を用いる場合、select句は、グループ関数またはgourp by句で指定した列を指定する必要がある。

通常では、order by句はselect句で指定していない列も使用できるが、

group by句を使う場合、group by句で指定したいずれかの列を使用しなければならない。

また、order by句では、列別名、列番号を使用することができる。

一方、group by句では、列別名、列番号を使用することはできない。

 

例:
 select 社員CD、所属、MAX(営業成績)
 from 社員テーブル
 group by 部署CD、所属
 order by 部署CD、MAX(営業成績)

おまけ

Order by句の使い方

・SELECT文の最後に記述
・複数の列名または式を指定可能
・列名以外に、列別名、列番号、グループ関数を指定可能
・SELECT句にない列も指定可能
・GROUP BY句と一緒のときは、SELECT句の列を指定する

 

ほらあなより愛をこめて

たぬきち