Sybase 12.7 Home Theater System User Manual


 
1 データベース・テーブルからのデータの選択
パフォーマンス&チューニング・ガイド 15
次のクエリは、GROUPING 関数を GROUP BY CUBE と組み合わせた使用例
です。
SELECT
CASE GROUPING ( state ) WHEN 1 THEN 'ALL' ELSE state END
AS c_state,
CASE GROUPING ( gender ) WHEN 1 THEN 'ALL' ELSE gender
END AS c_gender,
CASE GROUPING ( education ) WHEN 1 THEN 'ALL' ELSE
education END AS c_education,
COUNT(*), CAST (ROUND ( AVG ( income ), 2 ) AS NUMERIC
(18,2)) AS average
FROM census
GROUP BY CUBE (state, gender, education);
このクエリの結果は次のとおりです。CUBE が生成した小計ローを示す NULL
値が、クエリ内の指定によって小計ローで ALL に置き換わっています。
c_state c_gender c_education count(*) average
MA f BA 3 48333.33
MA f HS 2 40000.00
MA f MS 1 45000.00
MA f ALL 6 45000.00
MA m BA 4 55000.00
MA m HS 1 55000.00
MA m MS 3 85000.00
MA m ALL 8 66250.00
MA ALL ALL 14 57142.86
NH f HS 2 50000.00
NH f MS 1 85000.00
NH f ALL 3 61666.67
NH m BA 3 55000.00
NH m MS 1 49000.00
NH m ALL 4 53500.00
NH ALL ALL 7 57000.00
ALL ALL ALL 21 57095.24
ALL ALL BA 10 53000.00
ALL ALL MS 6 72333.33
ALL ALL HS 5 47000.00
ALL f ALL 9 50555.56