SQL演算子を使用して、式間の比較を指定します。
様々なタイプのSQL演算子を使用できます。
| 演算子 | 説明 |
|---|---|
|
値が2つの境界値の間(境界値は含まない)にあるかどうかを判断します。例:
条件を否定する場合は、 |
|
値が値のセット内に存在するかどうかを判断します。例:
|
|
値がnullかどうかを判断します。例:
|
|
値が文字列のすべてまたは一部と一致するかどうかを判断します。通常、ワイルドカード文字とともに使用して、ゼロ文字以上の任意の文字列(%)に一致するか、任意の単一の文字(_)と一致することを示します。例:
|
条件式を使用して、値を変換する式を作成します。
ここで説明する条件式は、ある形式から別の形式に値を変換する式を作成するための構築ブロックです。
注意:
CASE文では、ANDの優先度がORよりも高くなります| 式 | 例 | 説明 |
|---|---|---|
|
|
各 一致する |
|
|
どの 最初の式が複数の |
集計関数は、複数の値に対して演算を実行し、サマリー結果を作成します。
| 関数 | 例 | 説明 |
|---|---|---|
Avg |
|
数値の平均を計算します。 |
Bin |
|
データ値を含むディメンション、ファクト表またはメジャーの数値属性を選択し、個別の複数のビンに配置します。この関数は、新しいディメンション属性として扱われ、集計、フィルタ、ドリルなどで使用されます。 |
Count |
|
非NULL値を含むアイテムの数を特定します。 |
First |
|
式引数のnull以外の最初の戻り値を選択します。 |
Last |
|
式の最後の非NULLの戻り値を選択します。 |
Max |
|
数値式の引数を満たす行の最大値(最も高い数値)を計算します。 |
Median |
|
数値式の引数を満たす行の中央(中間)値を計算します。偶数の行がある場合、中央値は2つの中間行の平均です。この関数は常にdoubleを返します。 |
Min |
|
数値式の引数を満たす行の最小値(最も低い数値)を計算します。 |
StdDev |
|
値セットの標準偏差を返します。戻り型は常にdoubleです。 |
StdDev_Pop |
|
母分散および標準偏差の計算式を使用して、値セットの標準偏差を返します。 |
Sum |
|
数値式の引数を満たすすべての値を加算して得られる合計を計算します。 |
分析関数では、トレンド線やクラスタなどのモデルを使用してデータを調査できます。
| 関数 | 例 | 説明 |
|---|---|---|
Trendline |
|
線形または指数モデルに適合させて、適合した値またはモデルを返します。numeric_exprはトレンドのY値を表し、系列(時間列)はX値を表します。 |
Cluster |
|
K平均法または階層的クラスタリングを使用する1つ以上の入力式に基づいてレコード・セットをグループに集めます。 |
Outlier |
|
この関数は、K平均法、階層的クラスタリングまたは多変量外れ値検出アリゴリズムを使用する1つ以上の入力式に基づいて、レコードを外れ値として分類します。 |
Regr |
|
線形モデルに適合させて、適合した値またはモデルを返します。この関数は、2つのメジャーに線形曲線を適合するために使用できます。 |
Evaluate_Script |
|
1つ以上の列またはリテラル式を入力として渡して、script_file_pathに指定されたRスクリプトを実行します。関数の出力はoutput_column_nameによって決まります。 |
カレンダ関数は、暦年に基づいてデータ型DATEおよびDATETIMEのデータを操作します。
| 関数 | 例 | 説明 |
|---|---|---|
Current_Date |
|
現在の日付を返します。 |
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 |
|
指定された日付式の年を返します。 |
変換関数は、ある形式から別の形式に値を変換します。
| 関数 | 例 | 説明 |
|---|---|---|
Cast |
|
式またはNULLリテラルのデータ型を別のデータ型に変更します。たとえば、customer_name (CharまたはVarcharのデータ型)またはbirthdate (日時リテラル)をキャストできます。 日付データ型に変更する場合は、
|
IfNull |
|
式がNULL値と評価されるかどうかをテストし、評価される場合は、指定された値をその式に割り当てます。 |
IndexCol |
|
外部情報を使用して、ログインしているユーザーが参照できるように適切な列を返します。 |
NullIf |
|
2つの式を比較します。それらが等しい場合、NULLが戻されます。それらが等しくない場合、最初の式が戻されます。最初の式には、リテラルのNULLを指定できません。 |
To_DateTime |
|
日時書式の文字列リテラルをDateTimeデータ型に変換します。 |
表示関数は、問合せの結果セットを操作します。
| 関数 | 例 | 説明 |
|---|---|---|
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の値を返します。 |
評価関数は、式を通して高度な計算を行うために使用できるデータベース関数です。
埋込みデータベース関数には、1つ以上の列が必要になる場合があります。これらの列は、関数内で%1 ... %Nによって参照されます。実際の列は、関数の後にリストする必要があります。
| 関数 | 例 | 説明 |
|---|---|---|
Evaluate |
|
指定のデータベース関数を、パラメータとしてオプションの参照列を指定し、評価のためにデータベースに渡します。 |
Evaluate_Aggr |
|
指定のデータベース関数を、パラメータとしてオプションの参照列を指定し、評価のためにデータベースに渡します。この関数は、 |
この項で説明する数学関数は、数学演算を実行します。
| 関数 | 例 | 説明 |
|---|---|---|
Abs |
|
数値式の絶対値を計算します。 |
Acos |
|
数値式の逆余弦を計算します。 |
Asin |
|
数値式の逆正弦を計算します。 |
Atan |
|
数値式の逆正接を計算します。 |
Atan2 |
|
|
Ceiling |
|
整数以外の数値式を最も近い整数に切り上げます。数式が整数に評価される場合、 |
Cos |
|
数値式の余弦を計算します。 |
Cot |
|
数値式の余接を計算します。 |
Degrees |
|
式をラジアンから度に変換します。 |
Exp |
|
値を指定された値でべき乗します。 |
ExtractBit |
|
整数内の特定の位置にあるビットを取得します。そのビットの位置に対応する0または1の整数を返します。 |
Floor |
|
整数以外の数値式を最も近い整数に切り下げます。数式が整数に評価される場合、 |
Log |
|
式の自然対数を計算します。 |
Log10 |
|
式の基数10の対数を計算します。 |
Mod |
|
最初の数値式を2番目の数値式で除算し、商の余りを返します。 |
Pi |
|
パイの定数値を返します。 |
Power |
|
最初の数値式を取得し、2番目の数値式で指定された値でべき乗します。 |
Radians |
|
式を度からラジアンに変換します。 |
Rand |
|
0から1の疑似乱数を返します。 |
RandFromSeed |
|
シード値に基づいた疑似乱数を返します。特定のシード値に対して、乱数の同一セットが生成されます。 |
Round |
|
数値式を |
Sign |
|
この関数は次の値を返します。
|
Sin |
|
数値式の正弦を計算します。 |
Sqrt |
|
数値式の引数の平方根を計算します。数値式は、負数ではない数値に評価される必要があります。 |
Tan |
|
数値式の正接を計算します。 |
Truncate |
|
小数を切り捨てて、小数点から指定された桁数の数値を返します。 |
文字列関数は、様々な文字操作を実行します。これらは文字列に対して動作します。
| 関数 | 例 | 説明 |
|---|---|---|
Ascii |
|
単一文字列を0から255の対応するASCIIコードに変換します。文字式が複数の文字に評価される場合は、式の最初の文字に対応するASCIIコードが返されます。 |
Bit_Length |
|
指定された文字列の長さをビット単位で返します。各Unicode文字の長さは2バイトです(16ビットに相当)。 |
Char |
|
0から255の数値をASCIIコードに対応する文字値に変換します。 |
Char_Length |
|
指定した文字列の長さを文字数で返します。先頭と末尾の空白は、文字列の長さとして計算されません。 |
Concat |
|
2つの文字列を連結します。 |
Insert |
|
指定された文字列を別の文字列の指定された場所に挿入します。 |
Left |
|
文字列の左側から指定された文字数を返します。 |
Length |
|
指定した文字列の長さを文字数で返します。末尾の空白文字を除いた長さを返します。 |
Locate |
|
別の文字列での文字列の数値位置を返します。文字列が検索される文字列で見つからない場合、関数は値0を返します。 |
LocateN |
|
Locateと同様に、別の文字列での文字列の数値位置を返します。LocateNは、検索の開始位置を指定できる整数の引数を含みます。 |
Lower |
|
文字列を小文字に変換します。 |
Octet_Length |
|
指定された文字列のバイト数を返します。 |
Position |
|
文字式での |
Repeat |
|
指定した式を |
Replace |
|
指定された文字式の1つ以上の文字を別の1つ以上の文字で置換します。 |
Right |
|
文字列の右側から指定された文字数を返します。 |
Space |
|
空白を挿入します。 |
Substring |
|
元の文字列内に固定された文字数から始まる新しい文字列を作成します。 |
SubstringN |
|
Substringと同様に、元の文字列内に固定された文字数から始まる新しい文字列を作成します。 SubstringNは、新しい文字列の長さを文字数で指定できる整数の引数を含みます。 |
TrimBoth |
|
指定された先頭文字および末尾文字を文字列から削除します。 |
TrimLeading |
|
指定された先頭文字を文字列から削除します。 |
TrimTrailing |
|
指定された末尾文字を文字列から削除します。 |
Upper |
|
文字列を大文字に変換します。 |
時系列関数は、時間ディメンションを操作する集計関数です。
時間ディメンションのメンバーは、その関数のレベル以下である必要があります。そのため、特定のレベル以下のメンバーを一意に識別する1つ以上の列を問合せに投影する必要があります。
| 関数 | 例 | 説明 |
|---|---|---|
Ago |
|
現在の時刻から指定された過去の期間までのメジャーの集計値を計算します。たとえば、 |
Periodrolling |
|
|
ToDate |
|
指定された期間の最初から現在の表示時刻までのメジャーを集計します。たとえば、この関数では過去1年間の売上を計算できます。 |
Forecast |
|
指数平滑法またはARMIAを使用して、seriesに対して指定されたメジャーの時系列モデルを作成し、numPeriodsで指定された期間セットの予測を出力します。 |
式で定数を使用できます。
使用可能な定数は、Date、TimeおよびTimestampです。
| 定数 | 例 | 説明 |
|---|---|---|
| Date | DATE [2014-04-09] |
特定の日付を挿入します。 |
| Time | TIME [12:00:00] |
特定の時間を挿入します。 |
| TimeStamp | TIMESTAMP [2014-04-09 12:00:00] |
特定のタイムスタンプを挿入します。 |