構文
用途
PREVIOUS
ファンクションは、SELECT
文のmodel_clause
でのみ、およびmodel_rules_clause
のITERATE
... [ UNTIL
]
句でのみ使用できます。このファンクションは、各反復の最初にcell_reference
の値を戻します。
例
次の例では、反復の最初と最後にあるcur_val
の値の差が1未満になるまで、最大1000回ルールを繰り返します。
SELECT dim_col, cur_val, num_of_iterations FROM (SELECT 1 AS dim_col, 10 AS cur_val FROM dual) MODEL DIMENSION BY (dim_col) MEASURES (cur_val, 0 num_of_iterations) IGNORE NAV UNIQUE DIMENSION RULES ITERATE (1000) UNTIL (PREVIOUS(cur_val[1]) - cur_val[1] < 1) ( cur_val[1] = cur_val[1]/2, num_of_iterations[1] = num_of_iterations[1] + 1 ); DIM_COL CUR_VAL NUM_OF_ITERATIONS ---------- ---------- ----------------- 1 .625 4