関数
式で使用できる関数には様々なタイプがあります。
トピック:
集計関数
集計関数は、複数の値に対して演算を実行し、サマリー結果を作成します。
次のリストに、列およびメジャー列で使用できる集計ルールを示します。 リストには、分析の計算項目の作成時に使用できる関数も含まれています。
-
デフォルト - セマンティック・モデルと同様に、もしくは分析の最初の作成者によって、デフォルトの集計ルールが適用されます。 分析の計算項目には使用できません。
-
サーバーの設定を適用 - Oracle Analyticsによって決定された集計ルール(セマンティック・モデルで定義されたルールなど)が適用されます。 集計は、合計、最小および最大などの単純なルールの場合は、Oracle Analytics内で実行されます。「レイアウト」ペイン内のメジャー列、または分析での計算項目には使用できません。
-
SUM - 結果セットに含まれるすべての値を加算して取得した合計が計算されます。 数値を含む項目に使用します。
-
MIN - 結果セットに含まれる行の最小値(最も低い数値)が計算されます。 数値を含む項目に使用します。
-
MAX - 結果セットに含まれる行の最大値(最も高い数値)が計算されます。 数値を含む項目に使用します。
-
AVG - 結果セットに含まれる項目の平均値が計算されます。 数値を含む項目に使用します。 表およびピボット表の平均が、近似の整数値に丸められます。
-
FIRST - メジャーに関して、結果セットに含まれるその項目のうち、最初に出現するものが選択されます。 計算項目の場合は、「選択済」リストの表示に準じて最初のメンバーが選択されます。 「列式の編集」ダイアログ・ボックスでは使用できません。
-
LAST - 結果セットに含まれるその項目のうち、最後に出現するものが選択されます。 計算項目の場合は、「選択済」リストの表示に準じて最後のメンバーが選択されます。 「列式の編集」ダイアログ・ボックスでは使用できません。
-
COUNT - その項目に関して、結果セット内の、nullでない値を含む行の数が計算されます。 その項目は通常は列名であり、列名である場合は、その列の、null以外の値を含む行の数が返されます。
-
COUNT DISTINCT - COUNT関数に個別処理を追加します。つまり、項目の個別の出現は、1回のみカウントされます。
-
なし - 集計は適用されません。 分析の計算項目には使用できません。
-
レポートを基準にした合計(適用可能な場合) - 選択を解除すると、メジャーにフィルタが適用される前に、結果セット全体に基づいて、Oracle Analyticsによって合計が計算されます。 「列式の編集」ダイアログ・ボックスまたは分析の計算項目には使用できません。 属性列のみに使用できます。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
AGGREGATE AT |
|
指定したデータ・モデル階層内のレベルに基づいて列を集計します。
オプションで、複数のレベルを指定できます。 1番目の引数で指定したメジャーのメジャー・レベルとして使用されているレベルを含むディメンションのレベルは指定できません。 たとえば、monthがyearly_salesのメジャー・レベルとして使用される時間ディメンションのものである場合、関数を |
|
AGGREGATE BY | AGGREGATE(sales BY month, region) |
1つ以上のディメンション列に基づいてメジャーを集計します。
|
AGGREGATE(measure BY column [, column1, columnN]) |
AVG |
|
数値の平均を計算します。 |
|
AVGDISTINCT |
式のすべての値の平均(平均値)を個別に計算します。 |
|
|
BIN |
|
指定された数値式を、指定された同じ幅のバケットに分類します。 この関数は、ビン番号、またはビン間隔の2つのエンドポイントのいずれかを返すことができます。numeric_exprはビンに対するメジャーまたは数値属性です。 BY grain_expr1,…, grain_exprNは、numeric_exprが計算されるグレインを定義する式のリストです。 BYは、メジャー式には必須で、属性式の場合はオプションです。 ビンINTO number_of_bin BINSに数値が割り当てられる前に、numeric_exprに適用されるフィルタはbinの数です。BETWEEN min_value AND max_valueが、外側のbin RETURNING NUMBERの最後のポイントに使用される最小値と最大値は、戻り値がビン番号(1、2、3、4など)であることを示します。 これはデフォルトです。 RETURNING RANGE_LOWは、ビン間隔RETURNING RANGE_HIGHの下限値を示しています。この値は、ビン間隔の上限値を示しています。 |
|
BottomN |
式引数の最下位のnの値を、1からn番目までランク付けします。1は、最下位の数値に対応します。 exprは、数値に評価される任意の式です。整数は任意の正の整数です。 結果セットに表示されるランキングの一番下の数を表します。1は最も低いランクです。 |
|
|
COUNT |
|
非NULL値を含むアイテムの数を特定します。 |
|
COUNTDISTINCT |
COUNT関数に個別の処理を追加します。 exprは任意の式です。 |
|
|
COUNT* |
|
行数をカウントします。 |
|
First |
|
式引数のnull以外の最初の戻り値を選択します。 |
|
Last |
|
式の最後の非NULLの戻り値を選択します。 |
|
MAVG |
現在の行を含めて、結果セットのデータの最後のn行の移動平均を計算します。 exprは、数値に評価される任意の式です。整数は任意の正の整数です。 最後のn行のデータ平均を表します。 |
|
|
MAX |
|
数値式の引数を満たす行の最大値(最も高い数値)を計算します。 |
|
MEDIAN |
|
数値式の引数を満たす行の中央(中間)値を計算します。 偶数の行がある場合、中央値は2つの中間行の平均です。 この関数は常にdoubleを返します。 |
|
MIN |
|
数値式の引数を満たす行の最小値(最も低い数値)を計算します。 |
|
NTILE |
ユーザーの指定範囲における値のランクを決定します。 範囲のランクを示す整数を返します。 numTiles=100のNTILEは、一般に"百分位数"と呼ばれる内容を返します(1から100までの範囲の数値で、100がソートの高い部分を表します)。 exprは、数値に評価される任意の式です。numTilesは、タイルの数を表す正のnull以外の整数です。 |
|
|
PERCENTILE |
数値式引数に一致する各値の百分位数ランクを計算します。 パーセンタイル・ランクの範囲は、0 (0thパーセンタイル)から1 (100thパーセンタイル)です。 exprは、数値に評価される任意の式です。 |
|
|
RANK |
|
数値式の引数を満たす各値のランクを計算します。 最も高い数値にはランク1が割り当てられ、次に続くランクには2、3、4などの連続した整数が割り当てられます。 いくつかの値が等しい場合、それらには同じランクが割り当てられます(たとえば、1、1、1、4、5、5、7...)。 exprは、数値に評価される任意の式です。 |
|
STDDEV |
|
値セットの標準偏差を返します。 戻り型は常にdoubleです。 |
|
STDDEV_POP |
|
母分散および標準偏差の計算式を使用して、値セットの標準偏差を返します。 |
|
SUM |
|
数値式の引数を満たすすべての値を加算して得られる合計を計算します。 |
|
SUMDISTINCT |
数値式引数に一致するすべての値を個別に加算して得られる合計を計算します。 exprは、数値に評価される任意の式です。 |
|
|
TOPN |
式引数の最上位のnの値を、1からn番目までランク付けします。1は最も高い数値に対応します。 exprは、数値に評価される任意の式です。整数は任意の正の整数です。 結果セットに表示されるランキングの上位数を表します。1は最も高いランクです。 |
|
分析関数
アナリティクス関数を使用すると、予測、トレンド線、クラスタなどのモデルを使用してデータを探索できます。 または、アナリティクス関数をワークブック・エディタにドラッグ・アンド・ドロップできます。
または、ワークブック・エディタの「データ」パネルの「アナリティクス」タブで予測、トレンド線およびクラスタを選択して、ワークブックに予測、トレンド線およびクラスタを追加できます。 「ビジュアライゼーションへの統計アナリティクス関数の追加」を参照してください。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
CLUSTER |
|
K平均法または階層的クラスタリングを使用する1つ以上の入力式に基づいてレコード・セットをグループに集めます。 |
|
FORECAST |
日別収益予測の例 この例では、収益予測を日別に選択します。 FORECAST("A - Sample Sales"."Base Facts"."1- Revenue" Target, ("A - Sample Sales"."Time"."T00 Calendar Date"),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue 年および四半期別収益予測の例 この例では、年および四半期ごとの売上予測を選択します。 FORECAST("A - Sample Sales"."Base Facts"."1- Revenue", ("A - Sample Sales"."Time"."T01 Year" timeYear, "A - Sample Sales"."Time"."T02 Quarter" TimeQuarter),'forecast', 'numPeriods=30;predictionInterval=70;') ForecastedRevenue |
指数平滑法(ETS)または季節性ARMIAやARIMAを使用して、seriesに対して指定されたメジャーの時系列モデルを作成します。 この関数は、numPeriods引数で指定された一連の期間の予測を出力します。 後述のFORECAST関数の追加オプションも参照してください。 |
FORECAST(measure, ([series]), output_column_name, options,[runtime_binded_options])]) 説明:
後述のFORECAST関数の追加オプションも参照してください。 |
OUTLIER |
|
K平均法、階層的クラスタリングまたは多変量外れ値検出アリゴリズムを使用して、1つ以上の入力式に基づいてレコードを外れ値として分類します。 |
|
REGR |
|
線形モデルに適合させて、適合した値またはモデルを返します。 この関数は、2つのメジャーに線形曲線を適合するために使用できます。 |
|
TRENDLINE |
|
ビジュアライゼーションを表示する際は「統計の追加」プロパティを使用してトレンド線を適用することをお薦めします。 「ビジュアライゼーション・プロパティの調整」を参照してください。 線形、多項式または指数モデルに適合させて、適合した値またはモデルを返します。 numeric_exprはトレンドのy値、series (時間列)はx値を表します。 |
|
「FORECASTファンクションのオプション」次の表に、FORECAST
関数で使用できるオプションを示します。
オプション名 | 値 | 説明 |
---|---|---|
numPeriods | Integer | 予測する時間間隔の数 |
predictionInterval | 0から100。より高い値は高い信頼度を指定 | 予測の信頼度レベル。 |
modelType |
ETS (指数平滑法) SeasonalArima ARIMA |
予測に使用するモデル。 |
useBoxCox |
TRUE FALSE |
TRUEの場合は、Box-Cox変換を使用します。 |
lambdaValue | 該当なし |
Box-Cox変換パラメータ。 NULLの場合は無視。または そうしないと、モデルが推定される前にデータが変換されます。 |
trendDamp |
TRUE FALSE |
これは、指数平滑法モデルに固有です。 TRUEの場合、減衰傾向を使用します。 FALSEまたはNULLの場合、非サンプリング傾向を使用します。 |
errorType |
該当なし |
これは、指数平滑法モデルに固有です。 |
trendType |
N (なし) A (加算) M (乗算) Z (自動選択) |
これは、指数平滑法モデルに固有です |
seasonType |
N (なし) A (加算) M (乗算) Z (自動選択) |
これは、指数平滑法モデルに固有です |
modelParamIC |
ic_auto ic_aicc ic_bic ic_auto (デフォルト) |
モデル選択で使用される情報基準(IC)。 |
日付と時間関数
日付と時間関数は、DATE
およびDATETIME
に基づいてデータを操作します。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
CURRENT_Date |
|
現在の日付を返します。 日付は、Oracle BIが実行されているシステムによって決定されます。 |
|
CURRENT_TIME |
|
指定した精度の桁数で現在の時刻を返します。たとえば: HH:MM:SS.SSS 引数を指定しない場合、関数はデフォルトの精度を返します。 |
|
CURRENT_TIMESTAMP |
|
現在の日付/タイムスタンプを指定された精度の桁数で返します。 |
|
DAYNAME |
|
指定された日付式の曜日名を返します。 |
|
DAYOFMONTH |
|
指定された日付式について、月の通算日に対応する数字を返します。 |
|
DAYOFWEEK |
|
指定された日付式について、曜日に対応する1から7の数字を返します。 たとえば、1は日曜日、2は月曜日に対応し、同様に続いて7は土曜日に対応します。 |
|
DAYOFYEAR |
|
指定された日付式について、年の通算日に対応する数字(1から366)を返します。 |
|
DAY_OF_QUARTER |
|
指定された日付式について、四半期の通算日に対応する数字(1から92)を返します。 |
|
HOUR |
|
指定された時刻式について、時間に対応する数字(0から23)を返します。 たとえば、0は午前12時に対応し、23は午後11時に対応します。 |
|
MINUTE |
|
指定された時刻式について、分に対応する数字(0から59)を返します。 |
|
MONTH |
|
指定された日付式について、月に対応する数字(1から12)を返します。 |
|
MONTHNAME |
|
指定された日付式の月の名前を返します。 |
|
MONTH_OF_QUARTER |
|
指定された日付式について、四半期の通算月に対応する数字(1から3)を返します。 |
|
NOW |
|
現在のタイムスタンプを返します。 |
|
QUARTER_OF_YEAR |
|
指定された日付式について、年の四半期に対応する数字(1から4)を返します。 |
|
SECOND |
|
指定された時刻式について、秒に対応する数字(0から59)を返します。 |
|
TIMESTAMPADD |
|
指定された間隔の数をタイムスタンプに加算し、単一のタイムスタンプを返します。 間隔オプションは次のとおりです: SQL_TSI_SECOND, SQL_TSI_MINUTE, SQL_TSI_HOUR, SQL_TSI_DAY, SQL_TSI_WEEK, SQL_TSI_MONTH, SQL_TSI_QUARTER, SQL_TSI_YEAR |
|
TIMESTAMPDIFF |
|
2つのタイムスタンプ間の指定された間隔の合計数を返します。 TIMESTAMPADDと同じ間隔を使用します。 |
|
WEEK_OF_QUARTER |
|
指定された日付式について、四半期の通算週に対応する数字(1から13)を返します。 |
|
WEEK_OF_YEAR |
|
指定された日付式について、年の通算週に対応する数字(1から53)を返します。 |
|
YEAR |
|
指定された日付式の年を返します。 |
|
日付抽出関数
これらの関数は、タイムスタンプ値の計算または切捨てを行って、最も近い指定した期間(時間、日、週、月、四半期など)にします。
計算されたタイムスタンプを使用して、異なるグレインを使用してデータを集計できます。 たとえば、EXTRACTDAY()
関数を受注日に適用して、注文が発生した日の午前0時のタイムスタンプを計算すると、データを日別に集計できます。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
日を抽出 |
EXTRACTDAY("Order Date")
|
入力値が発生した日の午前0時(午前12時)のタイムスタンプを返します。 たとえば、入力タイムスタンプが2月22日午前3時02分01秒の場合、関数は2月22日午前12時00分00秒のタイムスタンプを返します。 |
|
時間を抽出 |
EXTRACTHOUR("Order Date")
|
入力値が発生した時刻の時間の開始のタイムスタンプを返します。 たとえば、入力タイムスタンプが午後11時18分30秒の場合、関数は午後11時00分00秒のタイムスタンプを返します。 |
|
日の時間を抽出 |
EXTRACTHOUROFDAY("Order Date")
|
年、月、日、分および秒のデフォルト値を使用して、時間が入力値の時間と等しいタイムスタンプを返します。 |
|
ミリ秒を抽出 |
EXTRACTMILLISECOND("Order Date")
|
入力値のミリ秒を含むタイムスタンプを返します。 たとえば、入力タイムスタンプが15時32分02.150秒の場合、関数は15時32分02.150秒のタイムスタンプを返します。 |
|
分を抽出 |
EXTRACTMINUTE("Order Date")
|
入力値が発生した時刻の分の開始のタイムスタンプを返します。 たとえば、入力タイムスタンプが午前11時38分21秒の場合、関数は午前11時38分00秒のタイムスタンプを返します。 |
|
月を抽出 |
EXTRACTMONTH("Order Date")
|
入力値が発生した月の最初の日のタイムスタンプを返します。 たとえば、入力タイムスタンプが2月22日の場合、関数は2月1日のタイムスタンプを返します。 |
|
四半期を抽出 |
EXTRACTQUARTER("Order Date")
|
入力値が発生した四半期の最初の日のタイムスタンプを返します。 たとえば、入力タイムスタンプが第3会計四半期に発生した場合、関数は7月1日のタイムスタンプを返します。 |
|
秒を抽出 |
EXTRACTSECOND("Order Date")
|
入力値のタイムスタンプを返します。 たとえば、入力タイムスタンプが15時32分02.150秒の場合、関数は15時32分02秒のタイムスタンプを返します。 |
|
週を抽出 |
EXTRACTWEEK("Order Date")
|
入力値が発生した週の最初の曜日(日曜日)の日付を返します。 たとえば、入力タイムスタンプが9月24日水曜日の場合、関数は9月21日日曜日のタイムスタンプを返します。 ノート: 週の最初の日(つまり日曜日)が前年に該当し、集計に悪影響を及ぼす可能性がある場合、関数は前年の週の最初の日ではなく、当年の週の7日目(つまり土曜日)を返します。 たとえば、1/1/24、1/2/24および1/3/24はすべてSunday 12/29/23ではなく、Saturday 1/6/24に集約されます。 |
|
年を抽出 |
EXTRACTYEAR("Order Date")
|
入力値が発生した年の1月1日のタイムスタンプを返します。 たとえば、入力タイムスタンプが1967年に発生した場合、関数は1967年1月1日のタイムスタンプを返します。 |
|
変換関数
変換関数は、ある形式から別の形式に値を変換します。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
CAST |
|
式またはNULLリテラルのデータ型を別のデータ型に変更します。 たとえば、customer_name (
|
|
IFNULL |
|
式がNULL値と評価されるかどうかをテストし、評価される場合は、指定された値をその式に割り当てます。 |
|
INDEXCOL |
|
外部情報を使用して、ログインしているユーザーが参照できるように適切な列を返します。 |
|
NULLIF |
|
2つの式を比較します。 それらが等しい場合、NULLが戻されます。 それらが等しくない場合、最初の式が戻されます。 最初の式には、リテラルのNULLを指定できません。 |
|
To_DateTime |
|
DateTime形式の文字列リテラルをDateTimeデータ型に変換します。 |
|
VALUEOF |
|
フィルタでセマンティック・モデル変数の値を参照します。 expr変数を |
|
表示関数
表示関数は、問合せの結果セットを操作します。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
BottomN |
|
最下位から最上位までランク付けされた式の、最下位のnの値を返します。 |
|
FILTER |
|
特定の事前集計フィルタを使用して式を計算します。 |
|
MAVG |
|
現在の行を含めて、結果セットのデータの最後のn行の移動平均を計算します。 |
|
MSUM |
|
現在の行を含めて、データの最後のn行の移動合計を計算します。 最初の行の合計は、最初の行の数値式と同じです。 2番目の行の合計は、最初の2つの行のデータの合計を取得することで計算され、それ以降も同様です。 n 番目の行に到達すると、合計は最後のn行のデータに基づいて計算されます。 |
|
NTILE |
|
ユーザーの指定範囲における値のランクを決定します。 範囲のランクを示す整数を返します。 例では、1から100の範囲で、1が販売の最小値、100が販売の最高値となります。 |
|
PERCENTILE |
|
数値式の引数を満たす各値のパーセント・ランクを計算します。 パーセンタイル・ランクの範囲は、0 (1番目のパーセンタイル)から1 (100番目のパーセンタイル)です。 |
|
RANK |
|
数値式の引数を満たす各値のランクを計算します。 最も高い数値にはランク1が割り当てられ、次に続くランクには2、3、4などの連続した整数が割り当てられます。 いくつかの値が等しい場合、それらには同じランクが割り当てられます(たとえば、1、1、1、4、5、5、7...)。 |
|
RCOUNT |
|
入力として一連のレコードを取得し、これまでに発生したレコード数をカウントします。 |
|
RMAX |
|
入力として一連のレコードを取得し、これまでに発生したレコードに基づいて最大値を示します。 指定するデータ型は順序付けできるものである必要があります。 |
|
RMIN |
|
入力として一連のレコードを取得し、これまでに発生したレコードに基づいて最小値を示します。 指定するデータ型は順序付けできるものである必要があります。 |
|
RSUM |
|
これまでに発生したレコードに基づいて累計を計算します。 最初の行の合計は、最初の行の数値式と同じです。 2番目の行の合計は、最初の2つの行のデータの合計を取得することで計算され、それ以降も同様です。 |
|
TOPN |
|
最上位から最下位までランク付けされた式の、最上位のnの値を返します。 |
|
表示関数の使用に関するヒント
- FILTER - サブジェクト領域を使用してレポートを作成する場合は、計算で階層列を直接フィルタ処理するのではなく、サブジェクト領域で定義された階層を使用します。 つまり、サブジェクト領域にTime\Fiscal Year\Fiscal Quarterの階層がある場合、次のことを回避します:
filter (<measure> using fiscal_quarter = 'Q4')
filter (<measure> using fiscal_quarter = 'Q3')
filter (<measure> using fiscal_year = 'FY24')
評価関数
評価関数は、式を通して高度な計算を行うために使用できるデータベース関数です。
埋込みデータベース関数には、1つ以上の列が必要になる場合があります。 これらの列は、関数内で%1 ... %Nによって参照されます。 実際の列は、関数の後にリストする必要があります。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
EVALUATE |
|
指定のデータベース関数を、パラメータとしてオプションの参照列を指定し、評価のためにデータベースに渡します。 |
|
EVALUATE_AGGR |
|
指定のデータベース関数を、パラメータとしてオプションの参照列を指定し、評価のためにデータベースに渡します。 この関数は、 |
|
数学関数
この項で説明する数学関数は、数学演算を実行します。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
ABS |
|
数値式の絶対値を計算します。 exprは、数値に評価される任意の式です。 |
|
ACOS |
|
数値式の逆余弦を計算します。 exprは、数値に評価される任意の式です。 |
|
ASIN |
|
数値式の逆正弦を計算します。 exprは、数値に評価される任意の式です。 |
|
ATAN |
|
数値式の逆正接を計算します。 exprは、数値に評価される任意の式です。 |
|
ATAN2 |
|
y /xのアーク・タンジェントを計算します。ここで、yは最初の数値式で、xは2番目の数値式です。 |
|
CEILING |
|
整数以外の数値式を最も近い整数に切り上げます。 数式が整数に評価される場合、 |
|
COS |
|
数値式の余弦を計算します。 exprは、数値に評価される任意の式です。 |
|
COT |
|
数値式の余接を計算します。 exprは、数値に評価される任意の式です。 |
|
DEGREES |
|
式をラジアンから度に変換します。 exprは、数値に評価される任意の式です。 |
|
EXP |
|
値を指定された値でべき乗します。 N番目の累乗に達するeを計算し、eは自然対数の基数です。 |
|
ExtractBit |
|
整数内の特定の位置にあるビットを取得します。 そのビットの位置に対応する0または1の整数を返します。 |
|
FLOOR |
|
整数以外の数値式を最も近い整数に切り下げます。 数式が整数に評価される場合、 |
FLOOR(expr) |
LOG |
|
式の自然対数を計算します。 exprは、数値に評価される任意の式です。 |
|
LOG10 |
|
式の基数10の対数を計算します。 exprは、数値に評価される任意の式です。 |
|
MOD |
|
最初の数値式を2番目の数値式で除算し、商の余りを返します。 |
|
PI |
|
パイの定数値を返します。 |
|
POWER |
|
最初の数値式を取得し、2番目の数値式で指定された値でべき乗します。 |
|
RADIANS |
|
式を度からラジアンに変換します。 exprは、数値に評価される任意の式です。 |
|
RAND |
|
0から1の疑似乱数を返します。 |
|
RANDFromSeed |
|
シード値に基づいた疑似乱数を返します。 特定のシード値に対して、乱数の同一セットが生成されます。 |
|
ROUND |
|
数値式をn桁の精度で丸めます。 exprは、数値に評価される任意の式です。 integerは、精度の桁数を表す任意の正の整数です。 |
|
SIGN |
|
次の値を返します:
|
|
SIN |
|
数値式の正弦を計算します。 |
|
SQRT |
|
数値式の引数の平方根を計算します。 数値式は、負数ではない数値に評価される必要があります。 |
|
TAN |
|
数値式の正接を計算します。 exprは、数値に評価される任意の式です。 |
|
TRUNCATE |
|
小数を切り捨てて、小数点から指定された桁数の数値を返します。 exprは、数値に評価される任意の式です。 integerは、戻す小数点以下の桁数の文字数を表す任意の正の整数です。 |
|
集計実行関数
集計関数を実行すると、複数の値に対して操作を実行しサマリー結果を作成できます。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
MAVG |
現在の行を含めて、結果セットのデータの最後のn行の移動平均を計算します。 exprは、数値に評価される任意の式です。integerは任意の正の整数です。 最後のn行のデータ平均を表します。 |
|
|
MSUM |
|
現在の行を含めて、データの最後のn行の移動合計を計算します。 exprは、数値に評価される任意の式です。integerは任意の正の整数です。 データの最後のn行の合計を表します。 |
|
RSUM |
|
これまでに発生したレコードに基づいて累計を計算します。 exprは、数値に評価される任意の式です。 |
|
RCOUNT |
|
入力として一連のレコードを取得し、これまでに発生したレコード数をカウントします。 exprは任意のデータ型の式です。 |
|
RMAX |
|
入力として一連のレコードを取得し、これまでに発生したレコードに基づいて最大値を示します。 exprは任意のデータ型の式です。 |
|
RMIN |
|
入力として一連のレコードを取得し、これまでに発生したレコードに基づいて最小値を示します。 exprは任意のデータ型の式です。 |
|
空間関数
空間関数により、データをモデル化するときに地理的分析を実行できます。 たとえば、2つの地理的領域(シェイプまたはポリゴン)間の距離を計算します。
ノート:
これらの空間関数は、ビジュアライゼーション・ワークブックのカスタム計算では使用できません。関数 | 例 | 説明 | 構文 |
---|---|---|---|
GeometryArea |
|
シェイプが占有する領域を計算します。 |
|
GeometryDistance |
|
2つのシェイプ間の距離を計算します。 |
|
GeometryLength |
|
シェイプの周囲を計算します。 |
|
GeometryRelate |
|
あるシェイプが別のシェイプの内側にあるかどうかを判別します。 TRUEまたはFALSEを文字列(varchar)として返します。 |
|
GeometryWithinDistance |
|
2つのシェイプが、相互に指定された距離内にあるかどうかを判断します。 TRUEまたはFALSEを文字列(varchar)として返します。 |
|
文字列関数
文字列関数は、様々な文字操作を実行します。 これらは文字列に対して動作します。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
ASCII |
|
単一文字列を0から255の対応するASCIIコードに変換します。 文字式が複数の文字に評価される場合は、式の最初の文字に対応するASCIIコードが返されます。 exprは、文字列として評価される任意の式です。 |
|
BIT_LENGTH |
|
指定された文字列の長さをビット単位で返します。 各Unicode文字の長さは2バイトです(16ビットに相当)。 exprは、文字列として評価される任意の式です。 |
|
CHAR |
|
0から255の数値をASCIIコードに対応する文字値に変換します。 exprは、0から255の間の数値に評価される任意の式です。 |
|
CHAR_LENGTH |
|
指定した文字列の長さを文字数で返します。 先頭と末尾の空白は、文字列の長さとして計算されません。 exprは、文字列として評価される任意の式です。 |
|
CONCAT |
|
2つの文字列を連結します。 exprは、カンマで区切られた文字列に評価される式です。
|
|
INSERT |
|
指定された文字列を別の文字列の指定された場所に挿入します。 expr1は、文字列として評価される任意の式です。 ターゲット文字列を示します。 integer1は、ターゲット文字列の先頭から2番目の文字列を挿入する文字数を表す任意の正の整数です。 integer2は、ターゲット文字列の2番目の文字列で置換される文字数を表す任意の正の整数です。 expr2は、文字列として評価される任意の式です。 ターゲット文字列に挿入される文字列を示します。 |
|
LEFT |
|
文字列の左側から指定された文字数を返します。 exprは、文字列として評価される任意の式です。 integerは、戻す文字列の左側の文字数を表す任意の正の整数です。 |
|
長さ |
|
指定した文字列の長さを文字数で返します。 末尾の空白文字を除いた長さを返します。 exprは、文字列として評価される任意の式です。 |
|
LOCATE |
|
別の文字列での文字列の数値位置を返します。 文字列が検索される文字列で見つからない場合、関数は値0を返します。 expr1は、文字列として評価される任意の式です。 検索する文字列を示します。 expr2は、文字列として評価される任意の式です。 検索対象の文字列を示します。 |
|
LOCATEN |
|
LOCATEと同様に、別の文字列での文字列の数値位置を返します。 LOCATENには整数の引数があり、検索を開始する開始位置を指定できます。 expr1は、文字列として評価される任意の式です。 検索する文字列を示します。 expr2は、文字列として評価される任意の式です。 検索対象の文字列を示します。 integerは、文字列の検索を開始する位置を表す正(ゼロ以外)の整数です。 |
|
LOWER |
|
文字列を小文字に変換します。 exprは、文字列として評価される任意の式です。 |
|
OCTET_LENGTH |
|
指定された文字列のバイト数を返します。 exprは、文字列として評価される任意の式です。 |
|
POSITION |
|
文字式でのstrExpr1の数値位置を返します。 strExpr1が見つからない場合、関数は0を返します。 expr1は、文字列として評価される任意の式です。 ターゲット文字列内で検索する文字列を示します。 たとえば、"d"です。 expr2は、文字列として評価される任意の式です。 検索対象のターゲット文字列を示します。 たとえば、"abcdef"です。 |
|
REPEAT |
|
指定した式をn回繰り返します。 exprは、文字列として評価される任意の式です。 integerは、文字列を繰り返す回数を表す任意の正の整数です。 |
|
置換 |
|
指定された文字式の1つ以上の文字を別の1つ以上の文字で置換します。 expr1は、文字列として評価される任意の式です。 これは、文字が置換される文字列です。 expr2は、文字列として評価される任意の式です。 この2つ目の文字列は、置換対象の最初の文字列の文字を識別します。 expr3は、文字列として評価される任意の式です。 この3番目の文字列は、最初の文字列に置換する文字を指定します。 |
|
RIGHT |
|
文字列の右側から指定された文字数を返します。 exprは、文字列として評価される任意の式です。 integerは、戻す文字列の右からの文字数を表す任意の正の整数です。 |
|
SPACE |
|
空白を挿入します。 integerは、挿入するスペースの数を示す任意の正の整数です。 |
|
SUBSTRING |
|
元の文字列内に固定された文字数から始まる新しい文字列を作成します。 exprは、文字列として評価される任意の式です。 startPosは、結果が開始される文字列の左側からの文字数を表す任意の正の整数です。 |
|
SUBSTRINGN |
|
SUBSTRINGと同様に、固定文字数からオリジナルの文字列の新しい文字列を作成します。 SUBSTRINGN整数の引数を使用して、新しい文字列の長さを文字数で指定できます。 exprは、文字列として評価される任意の式です。 startPosは、結果が開始される文字列の左側からの文字数を表す任意の正の整数です。 |
|
TrimBoth |
|
指定された先頭文字および末尾文字を文字列から削除します。 charは、任意の1文字です。 この指定(および必要な一重引用符)を省略すると、空白文字がデフォルトとして使用されます。 exprは、文字列として評価される任意の式です。 |
|
TRIMLEADING |
|
指定された先頭文字を文字列から削除します。 charは、任意の1文字です。 この指定(および必要な一重引用符)を省略すると、空白文字がデフォルトとして使用されます。 exprは、文字列として評価される任意の式です。 |
|
TRIMTRAILING |
|
指定された末尾文字を文字列から削除します。 charは、任意の1文字です。 この指定(および必要な一重引用符)を省略すると、空白文字がデフォルトとして使用されます。 exprは、文字列として評価される任意の式です。 |
|
UPPER |
|
文字列を大文字に変換します。 exprは、文字列として評価される任意の式です。 |
|
システム関数
USER
システム関数は、セッションに関連する値を返します。 たとえば、サインインしたユーザーのユーザー名です。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
DATABASE |
ログオンしているサブジェクト領域の名前を返します。 |
|
|
USER |
ログオンしているセマンティック・モデルのユーザー名を返します。 |
|
時系列関数
時系列関数では、時間ディメンションに基づいてデータを集計および予測できます。 たとえば、AGO関数を使用して、1年前からの収益を計算できます。
時間ディメンションのメンバーは、その関数のレベル以下である必要があります。 そのため、特定のレベル以下のメンバーを一意に識別する1つ以上の列を問合せに投影する必要があります。
関数 | 例 | 説明 | 構文 |
---|---|---|---|
AGO |
|
過去の指定された期間のメジャーの集計値を計算します。 たとえば、1年前の月次収益を計算するには、 |
説明:
|
PERIODROLLING |
|
x単位の時間から開始し、現在の時間からy単位の時間で終了する期間におけるメジャーの集計を計算します。 たとえば、 |
説明:
|
TODATE |
|
期間の開始から最新の期間までのメジャーの集計値を計算します。たとえば、年度開始から現在の計算。 たとえば、年累計売上を計算するには、 |
説明:
|