FCQUERYファンクションは、FCEXECコマンドの実行によって作成された予測の結果を問い合せます。
FCQUERYファンクションは、「予測プログラム」に示すように他のOLAP DML文と組み合せて使用する必要があります。
戻り値
戻り値は、このページの表に示すように、使用するオプションによって異なります。
構文
FCQUERY(HANDLELIST|handle-expression option -
[TRIAL trial-num] [CYCLE cycle-num])
引数
HANDLELISTキーワードを指定すると、FCQUERYファンクションは、現在開かれている予測コンテキストへのハンドルのリストである複数行のテキスト式を返します。
これから問い合せる予測コンテキスト、およびFCOPENファンクションを使用して前に開いた予測コンテキストへのハンドルであるINTEGER式。
取得する次のような特定の情報。
予測全体に指定されているオプションに関する情報を取得する場合、TRIALキーワードは使用しません。この場合のoptionは、FCSETコマンドを使用して指定可能なオプション、および表7-7「予測全体に指定可能なオプション」に示すオプションです。
特定の試行に関する情報を取得する場合、TRIAL trial-num句を使用します。この場合のoptionは、表7-8「個別の試行に指定可能なオプション」に示すオプションです。
オプション | 戻り値 | 説明 |
---|---|---|
ALLOCLAST |
BOOLEAN |
過調整の可能性を最後のサイクルの予測ではなく割当てによって削減するかどうかを示す。 |
ALPHA |
DOUBLE |
予測の試行に対するアルファの値。アルファは、単純指数平滑法、二重指数平滑法およびHolt-Winters予測法に使用されるレベルまたはベースラインのパラメータ。 |
BETA |
DOUBLE |
予測の試行に対するベータの値。ベータは傾向の予測を制御する傾向パラメータ。ベータは二重指数平滑法およびHolt-Winters予測法に使用。 |
COMPSMOOTH |
BOOLEAN |
中央値平滑データ系列に対して最適化を行うかどうかを示す。 |
CYCDECAY |
DOUBLE |
予測の試行に対する周期減衰パラメータの値。周期減衰は、Oracle OLAPが線形回帰および非線形回帰を行う際にベースライン・アクティビティからのずれをどこまで考慮するかに関係する。 |
GAMMA |
DOUBLE |
予測の試行に対するガンマの値。ガンマはHolt-Winters予測法に使用される季節パラメータ。 |
HISTUSED |
INTEGER |
先行するすべての |
MAD |
DOUBLE |
予測の試行に対する平均絶対偏差(MAD)。 |
MAPE |
DOUBLE |
予測の試行に対する平均誤差率(MAPE)。 |
MAXFCFACTOR |
DECIMAL |
予測データの上限。 |
METHOD |
TEXT |
予測の試行に対してOracle OLAPが使用した予測法。各種の方法の説明は、FCSETコマンドのMETHODオプションを参照。 |
MINFCFACTOR |
DECIMAL |
予測データの下限。 |
MPTDECAY |
DOUBLE |
予測の試行に対する移動周期的合計(MPT)系列の予測の解読の際に使用されたベース値の評価の減衰を調整したときにOracle OLAPが使用したパラメータの値。 |
NCYCLES |
INTEGER |
FCSETのPERIODICITY引数を使用して指定されるサイクルの数。 |
PERIODICITY |
INTEGER |
1つ以上のサイクルの期間における長さ。戻り値は、次のようにFCQUERYファンクションをコールする方法によって異なる。 CYCLE引数を指定した場合、PERIODICITYは指定したサイクルの期間の数を返す。 CYCLE引数を指定せず、FCSET ALLOCLASTが CYCLE引数を指定せず、FCSET ALLOCLASTが |
RMSE |
DOUBLE |
予測の試行に対するルート平均2乗誤差(RMSE)。 |
SMOOTHING |
BOOLEAN |
予測の試行に対してOracle OLAPがデータを平滑化したかどうかを示す。 |
TRANSFORM |
TEXT |
予測の試行に対してOracle OLAPが使用したデータ・フィルタ。各種のフィルタの説明は、FCSETコマンドのTRANSFORMオプションを参照。 |
TRENDHOLD |
DOUBLE |
予測の試行に対する傾向保持パラメータの値。傾向保持パラメータは、二重指数平滑法およびHolt-Winters予測法における傾向の信頼性を示す。 |
情報を取得する試行の番号であるINTEGER式。
PERIODICITYオプションから情報を取得するサイクルを指定するINTEGER式(表7-8「個別の試行に指定可能なオプション」を参照)。FCSETコマンドでPERIODICITY引数を使用して一連のサイクルを指定した場合、cycle-numの値は指定した一連のサイクルでの目的のサイクルの位置を示します。たとえば、FCSET PERIODICITY <52,7>
を指定したとします。この場合、1のcycle-numは52を返し、2のcycle-numは7を返します。FCSETコマンドでPERIODICITY引数を使用して一連のサイクルを指定しなかった場合、この引数を指定する必要はありません。
注意
オプションの使用方法
予測全体に指定されているオプションに関する情報または特定の試行に関する情報を取得できます。
予測全体に指定されているオプションに関する情報を取得する場合、TRIALキーワードは使用しません。この場合のoptionは、HANDLEID、TRIALSRUN、またはFCSETコマンドを使用して指定できるオプションです。
特定の試行に関する情報を取得する場合、TRIAL trial-num句を使用します。この場合のoptionは、ALPHA、BETA、CYCDECAY、GAMMA、MAD、MAPE、METHOD、MPTDECAY、RMSE、SMOOTHING、TRANSFORMまたはTRENDHOLDです。
ディメンション化されたデータへのアクセス
FCEXECコマンドを実行したときに複数の時系列がステータスにあった場合、TRIALSRUNおよびNTRIALのディメンション化されたデータも時系列式のディメンションによってディメンション化されます。Oracle OLAPはFCQUERYファンクションによって返される値をスカラー式として扱いますが、次の方法でそのディメンション化されたデータにアクセスできます。
FORループで、FCQUERYはFORディメンションの現行値に対するデータを返します。
QUALファンクションで、FCQUERYは修飾ディメンションの指定値に対するデータを返します。
その他のすべての場合で、FCQUERYは各ディメンションのステータスにある最初の値に対するデータを返します。
例
例7-87 予測の問合せ
例9-118「予測プログラム」に示すautofcst
プログラムは、queryall
という名前のプログラムをコールします。queryall
プログラムは、次のコードを使用して予測の試行の特性を取得します。
DEFINE queryall PROGRAM PROGRAM VARIABLE numtrials INTEGER VARIABLE loopindx INTEGER numtrials = FCQUERY(hndl trialsrun) row numtrials 'TRIALS' loopindx = 1 WHILE loopindx LE numtrials DO ROW loopindx 'METHOD' FCQUERY(hndl method trial loopindx) ROW loopindx 'TRANSFORM' FCQUERY(hndl transform trial loopindx) ROW loopindx 'SMOOTHING' FCQUERY(hndl smoothing trial loopindx) ROW loopindx 'ALPHA' FCQUERY(hndl alpha trial loopindx) ROW loopindx 'BETA' FCQUERY(hndl beta trial loopindx) ROW loopindx 'GAMMA' FCQUERY(hndl gamma trial loopindx) ROW loopindx 'TRENDHOLD' FCQUERY(hndl trendhold trial loopindx) ROW loopindx 'CYCDECAY' FCQUERY(hndl cycdecay trial loopindx) row loopindx 'MPTDECAY' FCQUERY(hndl mptdecay trial loopindx) ROW loopindx 'MAD' FCQUERY(hndl mad trial loopindx) ROW loopindx 'MAPE' FCQUERY(hndl mape trial loopindx) ROW loopindx 'RMSE' FCQUERY(hndl rmse trial loopindx) loopindx = loopindx + 1 DOEND END
QUERYALLプログラムの出力から作成されたサンプル・レポートは、次のとおりです。
3 TRIALS 1 METHOD HOLT/WINTERS 1 TRANSFORM TRNOSEA 1 SMOOTHING NO 1 ALPHA 0.2 1 BETA 0.3 1 GAMMA 0.3 1 TRENDHOLD 0.8 1 CYCDECAY -1 1 MPTDECAY -1 1 MAD 324.97047 1 MAPE 23.6192147 1 RMSE 389.40202 2 METHOD HOLT/WINTERS 2 TRANSFORM TRNOSEA 2 SMOOTHING NO 2 ALPHA 0.2 2 BETA 0.3 2 GAMMA 0.2 2 TRENDHOLD 0.8 2 CYCDECAY -1 2 MPTDECAY -1 2 MAD 324.97047 2 MAPE 23.6192147 2 RMSE 389.40202 3 METHOD HOLT/WINTERS 3 TRANSFORM TRNOSEA 3 SMOOTHING NO 3 ALPHA 0.2 3 BETA 0.3 3 GAMMA 0.1 3 TRENDHOLD 0.8 3 CYCDECAY -1 3 MPTDECAY -1 3 MAD 324.97047 3 MAPE 23.6192147 3 RMSE 389.40202