Sybase 12.7 manual •Group By のキーに定数式を指定することはできません。, パフォーマンス&チューニング・ガイド

Models: 12.7

1 212
Download 212 pages 60.16 Kb
Page 73
Image 73
Manual background

4 OLAP の使用

GROUP BY のキーに定数式を指定することはできません。

注意 キューブのサイズがテンポラリ・キャッシュのサイズを超えると、CUBE のパフォーマンスが低下します。

GROUPING CUBE 演算子を併用すると、格納されていた NULL 値と CUBE によって作成されたクエリ結果の “NULL” 値を区別することができます。

GROUPING 関数を使用して結果を分析する方法については、ROLLUP 演算子 の説明で紹介した例を参照してください。

CUBE 操作が返す結果セットには、集計カラムを除くすべてのカラムの値が NULL であるローが少なくとも 1 つは含まれています。このローは、集合関数 に対する全カラムの要約を表しています。

CUBE 1 次の例は、対象者の州 ( 地理的な位置 )、性別、教育レベル、およ び収入などで構成される調査データを使用したクエリです。最初に紹介するク エリには GROUP BY 句が指定されています。この句は、クエリの結果を census テーブルの stategendereducation カラムの値に応じてロー・グルー プに分類し、収入の平均とローの合計数をグループごとに計算します。このク エリには GROUP BY 句だけを使用し、ローのグループ化に CUBE 演算子を使 用していません。

SELECT state, sex as gender, dept_id, COUNT(*),

CAST(ROUND(AVG(salary),2) AS NUMERIC(18,2))

AS average

FROM employee WHERE state IN ('MA' , 'CA')

GROUP BY state, sex, dept_id

ORDER BY 1,2;

このクエリの結果セットを次に示します。

state gender dept_id count(*) avg salary

----------- ------- -------- ----------

CA

F

200

2

58650.00

CA

M

200

1

39300.00

MA

F

500

4

29950.00

MA

F

400

8

41959.88

MA

F

300

7

59685.71

MA

F

200

3

60451.00

MA

F

100

6

58243.42

MA

M

300

2

58850.00

MA

M

500

5

36793.96

MA

M

400

8

45321.47

MA

M

100

13

58563.59

MA

M

200

8

46810.63

パフォーマンス&チューニング・ガイド

57

Page 73
Image 73
Sybase 12.7 manual •Group By のキーに定数式を指定することはできません。, パフォーマンス&チューニング・ガイド