ADD_DIMENSION_SOURCE
プロシージャは、DBMS_AW$_DIMENSION_SOURCES_T
という表型に、キューブのディメンションに関する情報を移入します。この情報は、ADVISE_SPARSITY
プロシージャによって分析されます。
注意: OLAPワークシート内からはこのプロシージャを実行できません。SQL*PlusなどのSQLツール内で実行してください。 |
構文
ADD_DIMENSION_SOURCE ( dimname IN VARCHAR2, colname IN VARCHAR2, sources IN OUT dbms_aw$_dimension_sources_t, srcval IN VARCHAR2 DEFAULT NULL, dimtype IN NUMBER DEFAULT NO_HIER, hiercols IN columnlist_t DEFAULT NULL, partby IN NUMBER DEFAULT PARTBY_DEFAULT);
パラメータ
表B-2 ADD_DIMENSION_SOURCEプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ディメンションの名前。明確にするため、アナリティック・ワークスペースのディメンションの論理名を使用する。 |
|
dimnameのディメンション・メンバーにマップするファクト表の列の名前。 |
|
|
|
ディメンション表の名前、またはディメンションを定義する列を返すSQL文。このパラメータを省略した場合、colnameが使用される。 |
|
次に示す階層の型の1つ。 DBMS_AW.HIER_LEVELS : レベルベース階層DBMS_AW.HIER_PARENTCHILD : 親子階層DBMS_AW.MEASURE : メジャー・ディメンションDBMS_AW.NO_HIER : 階層なし |
|
階層を定義する列の名前。 レベルベース階層の場合、ベースレベルの列を最初に、最上位レベルの列を最後に指定する。ディメンションに複数の階層がある場合、予測で最も頻繁に使用する階層を選択し、この階層のレベルを定義する列のみを指定する。 親子階層の場合、子の列を最初に指定し、その後に親の列を指定する。 メジャー・ディメンションの場合、ディメンション・メンバーとなるファクト表の列を指定する。 |
|
パーティション化を制御するキーワード。次の値のいずれかを使用する。
|
例
次のPL/SQLプログラムの抜粋は、スパース性アドバイザで使用されるTIME
ディメンションに関する情報を示しています。このディメンションのソース・データは、TIME_DIM
というディメンション表に格納されています。主キーの名前はMONTH_ID
であり、ファクト表の外部キー列の名前もMONTH_ID
です。ディメンション階層は、MONTH_ID
列、QUARTER_ID
列およびYEAR_ID
列で定義されるレベルベースです。
このプログラムでは、情報を格納するために、DBMS_AW$_DIMENSION_SOURCES_T
の表型を持つDIMSOURCES
というPL/SQL変数が宣言されています。
DECLARE dimsources dbms_aw$_dimension_sources_t; BEGIN dbms_aw.add_dimension_source('time', 'month_id', dimsources, 'time_dim', dbms_aw.hier_levels, dbms_aw$_columnlist_t('month_id', 'quarter_id', 'year_id')); . . . END; /