Sybase 12.7 manual 集合関数によるグループ化されたデータの取得, グループの制限, Sybase IQ

Models: 12.7

1 212
Download 212 pages 60.16 Kb
Page 28
Image 28
集合関数によるグループ化されたデータの取得

集約データの取得

集合関数によるグループ化されたデータの取得

テーブル全体についての情報を取得することに加えて、集合関数をローのグ ループに対して使うこともできます。

ローのグループに対する 各営業担当者が受け持つ注文数をリストするには、次のコマンドを入力します。

集合関数の使用

SELECT sales_rep, count( * )

FROM sales_order

GROUP BY sales_rep

sales_rep

count(*)

129

57

195

50

299

114

467

56

667

54

 

 

このクエリの結果は、各営業担当者の ID 番号別に、営業担当者の ID が格納さ れたローと、sales_order テーブル内でその ID 番号を持つローの数で構成され ます。

GROUP BY 句を使用すると、結果のテーブルには、GROUP BY で指定したカ ラムで見つかった値別のローが表示されます。

グループの制限

WHERE 句を使用して、クエリでローを制限する方法についてはすでに説明し ました。GROUP BY 句の制限には、HAVING キーワードを使用します。

GROUP BY 句の制限 注文数が 55 を超えるすべての営業担当者をリストするには、次のコマンドを 入力します。

SELECT sales_rep, count( * )

FROM sales_order

GROUP BY sales_rep

HAVING count( * ) > 55

sales_rep

count(*)

129

57

299

114

467

56

1142

57

 

 

注意 GROUP BY は常にHAVING の前に指定します。同様に、WHERE GROUP

BY の前に指定します。

12

Sybase IQ

Page 28
Image 28
Sybase 12.7 manual 集合関数によるグループ化されたデータの取得, グループの制限, Sybase IQ