Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー SQL の使用法 » データの問い合わせと修正

 

OLAP のサポート

OLAP (オンライン分析処理) では、単一の SQL 文内で複雑なデータ分析を実行できます。また、データベースでクエリの量を減らすことでパフォーマンスを向上しながら、結果の値を増やすことができます。SQL 文と Window 関数の拡張を使用することで、OLAP 機能を利用できます。このような SQL の拡張や機能では、多次元データ分析、データマイニング、時系列分析、傾向分析、コスト配分、ゴールシーク、例外警告などを、通常は単一の SQL 文を使用して、簡単に実行できます。

  • SELECT 文の拡張   SELECT 文を拡張することにより、入力ローをグループ化したり、グループを分析したり、最終結果セットに検索結果を含めることができます。これらの拡張には、GROUP BY 句 (GROUPING SETS、CUBE、ROLLUP の各サブ句) と WINDOW 句に対する拡張が含まれます。

    GROUP BY 句の拡張では、入力ローを複数の方法で分割できるため、さまざまなグループを連結する結果セットを得ることができます。データマイニング用に散在した多次元結果セット (「データキューブ」とも呼ばれる) を作成することもできます。さらに、この拡張により、サブ合計のローと総合計のローを使用して、分析をより便利にすることができます。

    WINDOW 句は、入力ローのグループで分析する機会を増やすために Window 関数とともに使用されます。

  • Window 集合関数   ほとんどの集合関数で、入力ローの処理に合わせて入力ローを上から下に移動する、設定可能なスライド「ウィンドウ」の概念がサポートされています。ウィンドウの移動とともにウィンドウ内のデータに対する追加の計算を実行できるため、セマンティック上同等なセルフジョインクエリや相関サブクエリを使用する方法よりも効率的な方法で、詳細な分析を実行できます。

    たとえば Window 集合関数を GROUP BY 句の CUBE、ROLLUP、GROUPING SETS 拡張と組み合わせることで、単一の SQL 文内における百分位数、移動平均、累積合計を効率的に計算できます。それ以外の方法では、セルフジョイン、相関サブクエリ、テンポラリテーブル、またはこれら 3 つを組み合わせなければなりません。

    Window 集合関数を使用すると、ダウジョーンズ工業平均株価の四半期の移動平均や、部門ごとの全従業員と給与の累積合計などの情報を取得できます。また、平方偏差、標準偏差、相関、回帰などの測定を計算することもできます。

  • Window ランキング関数   Windows ランキング関数を使用すると、今年出荷された総売り上げ上位 10 製品や、最低 15 企業に販売注文した販売担当者の上位 5% といった情報を取得する、単一文の SQL クエリを作ることができます。

 参照

OLAP パフォーマンスの向上
GROUP BY 句の拡張
GROUPING SETS のショートカットとしての ROLLUP と CUBE
Window 関数
Window 関数