この新機能を使用すると、ユーザーおよび管理者は、Oracle BI Answersから、またはメタデータ(リポジトリ)内の(論理テーブルソースの)論理カラムを使用してデータベース関数を直接コールすることにより、より強力なレポートを作成できます。
現在Oracle BI Serverでは、データベース内に定義された関数を、Answersインタフェースから、またはメタデータ(リポジトリ)内の(論理テーブルソースの)論理カラムを使用して直接コールする機能がサポートされています。今回のリリースでは、この機能はSQLソースのサポートにのみ制限されています。
注意: 今回のリリースでは、MDXまたはMOLAPデータソースはサポートされていません。 |
サポートされるデータベース関数は次のとおりです。
EVALUATE
詳細は、第6.1項「EVALUATE関数」を参照してください。
EVALUATE_AGGR
詳細は、第6.2項「EVALUATE_AGGR関数」を参照してください。
EVALUATE_PREDICATE
詳細は、第6.3項「EVALUATE_PREDICATE関数」を参照してください。
この関数は、スカラー計算および分析計算を意図しています。
構文: EVALUATE('DB_Function(%1)', <カンマ区切り式>)
例: SELECT e.lastname,sales.revenue,EVALUATE('dense_rank() over(order by %1 )',sales.revenue) FROM sales s, employee e;
この関数は、GROUP BY句を使用する集計関数を意図しています。
構文: EVALUATE_AGGR('DB_Aggregate_Function(%1)', <カンマ区切り式>)
例: SELECT year.year, sales.qtysold, EVALUATE_AGGR('sum(%1)', sales.quantity) From SnowFlakeSales;
この関数は、戻り型にブールを返す関数を意図しています。
構文: EVALUATE_PREDICATE('DB_Function(%1)', <カンマ区切り式>)
例: SELECT year, Sales as DOUBLE,CAST(EVALUATE('OLAP_EXPRESSION(%1,''LAG(units_cube_sales, 1, time, time LEVELREL time_levelrel)'')', OLAP_CALC) AS DOUBLE) FROM "Global".Time, "Global"."Facts - sales" WHERE EVALUATE_PREDICATE('OLAP_CONDITION(%1, ''LIMIT time KEEP ''''1'''', ''''2'''', ''''3'''', ''''4'''' '') =1', OLAP_CALC) order by year;