式の編集 expression
式を編集する場合は、条件を手動で入力してルールを作成します。このモードでは、日付、文字列、数値の各フィールドの操作や並べ替えなど、具体的なクエリの実行に使用する値を操作する高度な関数を使用できます。
式エディターの操作 edit
式エディターは、クエリモデラーの「式を編集」ボタンから実行できます。このボタンは、カスタム条件を設定する際に「属性」フィールドと「値」フィールドで使用できます。
式エディターには、次の内容があります。
- 式を定義するための入力フィールド(1)。
- 式で使用でき、クエリのスキーマ(ターゲティングディメンションとも呼ばれる)に対応する使用可能な フィールド(2) のリスト。
- カテゴリ別に並べ替えられるヘルパー関数(3)。
式を編集するには、入力フィールドに式を直接入力します。フィールドまたはヘルパー関数を追加するには、式内の追加する場所にカーソルを置き、「+」ボタンをクリックします。
式の準備が整ったら、「確認」ボタンをクリックします。式は、選択したフィールドに表示されます。編集するには、式エディターを開き、目的の変更を行います。
次の例は、「値」フィールドに設定された式を示しています。編集するには、「式を編集」ボタンを使用して式エディターを開く必要があります。
ヘルパー関数
クエリ編集ツールを使用すると、高度な関数を使用して、目的の結果や操作対象のデータのタイプに応じて複雑なフィルタリングを実行できます。次の関数を使用できます。
日付
日付関数は、日付や時刻の値を操作する場合に使用します。
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 17-row-4 18-row-4 19-row-4 20-row-4 21-row-4 22-row-4 23-row-4 24-row-4 25-row-4 26-row-4 27-row-4 28-row-4 29-row-4 30-row-4 31-row-4 32-row-4 33-row-4 34-row-4 35-row-4 36-row-4 37-row-4 38-row-4 39-row-4 40-row-4 41-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| AddYears | 指定された年数を指定された日時に加算します。 | AddYears(<日時>, <数値>) | AddYears("2019-12-25 15:30:00", 3) |
| AddMonths | 指定された月数を指定された日時に加算します。 | AddMonths(<日時>, <数値>) | AddMonths("2019-12-25 15:30:00", 6) |
| AddDays | 指定された日数を指定された日時に加算します。 | AddDays(<日時>, <数値>) | AddDays("2019-12-25 15:30:00", 10) |
| AddHours | 指定された時間数を指定された日時に加算します。 | AddHours(<日時>, <数値>) | AddHours("2019-12-25 15:30:00", 3) |
| AddMinutes | 指定された分数を指定された日時に加算します。 | AddMinutes(<日時>, <数値>) | AddMinutes("2019-12-25 15:30:00", 32) |
| AddSeconds | 指定された秒数を指定された日時に加算します。 | AddSeconds(<日時>, <数値>) | AddSeconds("2019-12-25 15:30:00", 37) |
| SubYears | 指定された年数を指定された日時に減算します。 | SubYears(<日時>, <数値>) | SubYears("2019-12-25 15:30:00", 3) |
| SubMonths | 指定された月数を指定された日時に減算します。 | SubMonths(<日時>, <数値>) | SubMonths("2019-12-25 15:30:00", 6) |
| SubDays | 指定された日数を指定された日時に減算します。 | SubDays(<日時>, <数値>) | SubDays("2019-12-25 15:30:00", 10) |
| SubHours | 指定された時間数を指定された日時に減算します。 | SubHours(<日時>, <数値>) | SubHours("2019-12-25 15:30:00", 3) |
| SubMinutes | 指定された分数を指定された日時に減算します。 | SubMinutes(<日時>, <数値>) | SubMinutes("2019-12-25 15:30:00", 32) |
| SubSeconds | 指定された秒数を指定された日時に減算します。 | SubSeconds(<日時>, <数値>) | SubSeconds("2019-12-25 15:30:00", 37) |
| Year | 指定された日時オブジェクトから年を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Month | 指定された日時オブジェクトから月を抽出します。 | Month(<日時>) | Month("2019-12-15 15:30:00") |
| Day | 指定された日時オブジェクトから日を抽出します。 | Day(<日時>) | Day("2019-12-15 15:30:00") |
| DayOfYear | 指定された日時オブジェクトから年内の日を抽出します。 例えば、指定された日時が 2月2日(PT)である場合、33 が返されます。 | DayOfYear(<日時>) | DayOfYear("2019-12-15 15:30:00") |
| WeekDay | 指定された日時オブジェクトから曜日を 0~6 の数値として抽出します。0 は日曜日を表します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Hour | 指定された日時オブジェクトから時間の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Minute | 指定された日時オブジェクトから分の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Second | 指定された日時オブジェクトから 2 番目の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| YearsDiff | 指定された日時の違いを年の精度で検索します。 | YearsDiff(<日時>, <日時>) | YearsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| MonthsDiff | 指定された日時の違いを月の精度で検索します。 | MonthsDiff(<日時>, <日時>) | MonthsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| DaysDiff | 指定された日時の違いを日の精度で検索します。 | DaysDiff(<日時>, <日時>) | DaysDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| HoursDiff | 指定された日時の違いを時間の精度で検索します。 | HoursDiff(<日時>, <日時>) | HoursDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| MinutesDiff | 指定された日時の違いを分の精度で検索します。 | MinutesDiff(<日時>, <日時E>) | MinutesDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| SecondsDiff | 指定された日時の違いを秒の精度で検索します。 | SecondsDiff(<日時>, <日時>) | SecondsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| YearsOld | 指定された日時と現在の違いを年の精度で検索します。 | YearsOld(<日時>) | YearsOld("2019-12-25 15:30:00") |
| MonthsOld | 指定された日時と現在の違いを月の精度で検索します。 | MonthsOld(<日時>) | MonthsOld("2019-12-25 15:30:00") |
| DaysOld | 指定された日時と現在の違いを日の精度で検索します。 | DaysOld(<日時>) | DaysOld("2019-12-25 15:30:00") |
| GetDate | サーバーの現在の日付を取得します。 | GetDate() | GetDate() |
| DateOnly | 日時を年、月、日のみに切り捨てます。 | DateOnly(<日時>) | DateOnly("2019-12-25 15:30:00") |
| ToDate | フィールドを日付フィールドに変換します。 | ToDate(<日時>) | ToDate("2019-12-25 15:30:00") |
| ToDateTime | フィールドを日時フィールドに変換します。 | ToDateTime(<日付>) | ToDateTime("2019-12-25 15:30:00") |
| ToTimestamp | フィールドをタイムスタンプフィールドに変換します。 | ToTimestamp(<日時>) | ToTimestamp("2019-12-25 15:30:00") |
| Oldest | 指定された 2 つの日付間の最も古い日付を返します。 | Oldest(<日時>, <日時>) | Oldest("2015-02-13 11:59:59", "2016-04-13 19:28:14") |
| TruncDate | 指定された数値に基づいて、日時を最も近い単位に切り捨てます。数値が 60 に等しい場合は、最も近い分に切り捨てられます。 数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。数値が 86400 に等しい場合は、最も近い日に切り捨てられます。それ以外の場合は、最も近い秒に切り捨てられます。 | TruncDate(<日時>, <数値>) | TruncDate("2016-04-13 19:28:14", 3600) |
| TruncDateTZ | 指定された数値に基づいて、日時を最も近い単位に切り捨て、日時を指定されたタイムゾーンに設定します。数値が 60 に等しい場合は、最も近い分に切り捨てられます。 数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。数値が 86400 に等しい場合は、最も近い日に切り捨てられます。 | TruncDateTZ(<日時>, <数値>, <タイムゾーン>) | TruncDateTZ("2016-04-13 19:28:14", 3600, "米国/ロサンゼルス") |
| TruncTime | 日時を 2000年1月1日(PT)に設定し、指定された数値に基づいて、残りの日時を最も近い単位に丸めます。数値が 60 に等しい場合は、最も近い分に切り捨てられます。数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。 | TruncTime(<日時>, <数値>) | TruncTime("2016-04-13 19:28:14", 3600) |
| TruncQuarter | 日時を最も近い四半期の最初の日付に切り捨てます。 | TruncQuarter(<日時>) | TruncQuarter("2016-04-13 19:28:14") |
| TruncYear | 日時を最も近い年の最初の日付に切り捨てます。 | TruncYear(<日時>) | TruncYear("2016-04-13 19:28:14") |
| TruncWeek | 日時を最も近い週の日曜日に切り捨てます。 | TruncWeek(<日時>) | TruncWeek("2016-04-13 19:28:14") |
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 17-row-4 18-row-4 19-row-4 20-row-4 21-row-4 22-row-4 23-row-4 24-row-4 25-row-4 26-row-4 27-row-4 28-row-4 29-row-4 30-row-4 31-row-4 32-row-4 33-row-4 34-row-4 35-row-4 36-row-4 37-row-4 38-row-4 39-row-4 40-row-4 41-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| AddYears | 指定された年数を指定された日時に加算します。 | AddYears(<日時>, <数値>) | AddYears("2019-12-25 15:30:00", 3) |
| AddMonths | 指定された月数を指定された日時に加算します。 | AddMonths(<日時>, <数値>) | AddMonths("2019-12-25 15:30:00", 6) |
| AddDays | 指定された日数を指定された日時に加算します。 | AddDays(<日時>, <数値>) | AddDays("2019-12-25 15:30:00", 10) |
| AddHours | 指定された時間数を指定された日時に加算します。 | AddHours(<日時>, <数値>) | AddHours("2019-12-25 15:30:00", 3) |
| AddMinutes | 指定された分数を指定された日時に加算します。 | AddMinutes(<日時>, <数値>) | AddMinutes("2019-12-25 15:30:00", 32) |
| AddSeconds | 指定された秒数を指定された日時に加算します。 | AddSeconds(<日時>, <数値>) | AddSeconds("2019-12-25 15:30:00", 37) |
| SubYears | 指定された年数を指定された日時に減算します。 | SubYears(<日時>, <数値>) | SubYears("2019-12-25 15:30:00", 3) |
| SubMonths | 指定された月数を指定された日時に減算します。 | SubMonths(<日時>, <数値>) | SubMonths("2019-12-25 15:30:00", 6) |
| SubDays | 指定された日数を指定された日時に減算します。 | SubDays(<日時>, <数値>) | SubDays("2019-12-25 15:30:00", 10) |
| SubHours | 指定された時間数を指定された日時に減算します。 | SubHours(<日時>, <数値>) | SubHours("2019-12-25 15:30:00", 3) |
| SubMinutes | 指定された分数を指定された日時に減算します。 | SubMinutes(<日時>, <数値>) | SubMinutes("2019-12-25 15:30:00", 32) |
| SubSeconds | 指定された秒数を指定された日時に減算します。 | SubSeconds(<日時>, <数値>) | SubSeconds("2019-12-25 15:30:00", 37) |
| Year | 指定された日時オブジェクトから年を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Month | 指定された日時オブジェクトから月を抽出します。 | Month(<日時>) | Month("2019-12-15 15:30:00") |
| Day | 指定された日時オブジェクトから日を抽出します。 | Day(<日時>) | Day("2019-12-15 15:30:00") |
| DayOfYear | 指定された日時オブジェクトから年内の日を抽出します。 例えば、指定された日時が 2月2日(PT)である場合、33 が返されます。 | DayOfYear(<日時>) | DayOfYear("2019-12-15 15:30:00") |
| WeekDay | 指定された日時オブジェクトから曜日を 1~7 の数値として抽出します。1 は日曜日を表します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Hour | 指定された日時オブジェクトから時間の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Minute | 指定された日時オブジェクトから分の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| Second | 指定された日時オブジェクトから 2 番目の値を抽出します。 | Year(<日時>) | Year("2019-12-15 15:30:00") |
| YearsDiff | 指定された日時の違いを年の精度で検索します。 | YearsDiff(<日時>, <日時>) | YearsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| MonthsDiff | 指定された日時の違いを月の精度で検索します。 | MonthsDiff(<日時>, <日時>) | MonthsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| DaysDiff | 指定された日時の違いを日の精度で検索します。 | DaysDiff(<日時>, <日時>) | DaysDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| HoursDiff | 指定された日時の違いを時間の精度で検索します。 | HoursDiff(<日時>, <日時>) | HoursDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| MinutesDiff | 指定された日時の違いを分の精度で検索します。 | MinutesDiff(<日時>, <日時E>) | MinutesDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| SecondsDiff | 指定された日時の違いを秒の精度で検索します。 | SecondsDiff(<日時>, <日時>) | SecondsDiff("2019-12-25 15:30:00", "2018-10-14 18:35:27") |
| MonthsOld | 指定された日時と現在の違いを月の精度で検索します。 | MonthsOld(<日時>) | MonthsOld("2019-12-25 15:30:00") |
| DaysOld | 指定された日時と現在の違いを日の精度で検索します。 | DaysOld(<日時>) | DaysOld("2019-12-25 15:30:00") |
| GetDate | サーバーの現在の日付を取得します。 | GetDate() | GetDate() |
| DateOnly | 日時を年、月、日のみに切り捨てます。 | DateOnly(<日時>) | DateOnly("2019-12-25 15:30:00") |
| ToDate | フィールドを日付フィールドに変換します。 | ToDate(<日時>) | ToDate("2019-12-25 15:30:00") |
| ToDateTime | フィールドを日時フィールドに変換します。 | ToDateTime(<日付>) | ToDateTime("2019-12-25 15:30:00") |
| ToTimestamp | フィールドをタイムスタンプフィールドに変換します。 | ToTimestamp(<日時>) | ToTimestamp("2019-12-25 15:30:00") |
| Oldest | 指定された 2 つの日付間の最も古い日付を返します。 | Oldest(<日時>, <日時>) | Oldest("2015-02-13 11:59:59", "2016-04-13 19:28:14") |
| TruncDate | 指定された数値に基づいて、日時を最も近い単位に切り捨てます。数値が 60 に等しい場合は、最も近い分に切り捨てられます。 数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。数値が 86400 に等しい場合は、最も近い日に切り捨てられます。それ以外の場合は、最も近い秒に切り捨てられます。 | TruncDate(<日時>, <数値>) | TruncDate("2016-04-13 19:28:14", 3600) |
| TruncDateTZ | 指定された数値に基づいて、日時を最も近い単位に切り捨て、日時を指定されたタイムゾーンに設定します。数値が 60 に等しい場合は、最も近い分に切り捨てられます。 数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。数値が 86400 に等しい場合は、最も近い日に切り捨てられます。 | TruncDateTZ(<日時>, <数値>, <タイムゾーン>) | TruncDateTZ("2016-04-13 19:28:14", 3600, "米国/ロサンゼルス") |
| TruncTime | 日時を 2000年1月1日(PT)に設定し、指定された数値に基づいて、残りの日時を最も近い単位に丸めます。数値が 60 に等しい場合は、最も近い分に切り捨てられます。数値が 3600 に等しい場合は、最も近い時間に切り捨てられます。 | TruncTime(<日時>, <数値>) | TruncTime("2016-04-13 19:28:14", 3600) |
| TruncQuarter | 日時を最も近い四半期の最初の日付に切り捨てます。 | TruncQuarter(<日時>) | TruncQuarter("2016-04-13 19:28:14") |
| TruncYear | 日時を最も近い年の最初の日付に切り捨てます。 | TruncYear(<日時>) | TruncYear("2016-04-13 19:28:14") |
| TruncWeek | 日時を最も近い週の日曜日に切り捨てます。 | TruncWeek(<日時>) | TruncWeek("2016-04-13 19:28:14") |
| ConvertNTZ | タイムゾーンのないタイムスタンプをタイムゾーンのあるタイムスタンプに変換します。 添付されるタイムゾーンは、外部アカウントのタイムゾーンになります。 | ConvertNTZ(<日時>) | ConvertNTZ("2024-06-24 14:43:49") |
ジオマーケティング
ジオマーケティング関数は、地理に関する値を操作する場合に使用します。
| table 0-row-4 1-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Distance | 経度と緯度で定義された 2 点間の距離を度単位で double として返します。 | Distance(<数値>, <数値>, <数値>, <数値>) | Distance(40.345, 39.2345, -35.5834, 34.599) |
| table 0-row-4 1-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Distance | 経度と緯度で定義された 2 点間の距離を度単位で double として返します。 | Distance(<数値>, <数値>, <数値>, <数値>) | Distance(40.345, 39.2345, -35.5834, 34.599) |
数値
数値関数は、テキストを数値に変換する場合に使用します。
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Mod | 最初の数値を 2 番目の数値で割った余りを返します。 | Mod(<数値>, <数値>) | Mod(3, 2) |
| Percent | 最初の数値が 2 番目の数値の何パーセントであるかを計算します。 | Percent(<数値>, <数値>) | Percent(1, 2) |
| Random | 0(含む)と 1(含まない)の間の乱数を返します。 | Random() | Random() |
| Round | 指指定された数値をリクエストされた最も近い小数点以下の桁数に返します。 | Round(<数値>, <数値>) | Round(4.5394, 2) |
| ToDouble | 指定された数値を double に変換します。 | ToDouble(<数値>) | ToDouble(5) |
| ToInteger | 指定された数値を整数に変換します。 | ToInteger(<数値>) | ToInteger(45) |
| ToInt64 | 指定された数値を 64 ビットの整数に変換します。 | ToInt64(<数値>) | ToInt64(493) |
| Trunc | 指定された数値をリクエストされた小数点以下の桁数に切り捨てます。 | Trunc(<数値>, <数値>) | Trunc(36.9348934, 3) |
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Mod | 最初の数値を 2 番目の数値で割った余りを返します。 | Mod(<数値>, <数値>) | Mod(3, 2) |
| Percent | 最初の数値が 2 番目の数値の何パーセントであるかを計算します。 | Percent(<数値>, <数値>) | Percent(1, 2) |
| Random | 0(含む)と 1(含まない)の間の乱数を返します。 | Random() | Random() |
| ToDouble | 指定された数値を double に変換します。 | ToDouble(<数値>) | ToDouble(5) |
| ToInteger | 指定された数値を整数に変換します。 | ToInteger(<数値>) | ToInteger(45) |
| ToInt64 | 指定された数値を 64 ビットの整数に変換します。 | ToInt64(<数値>) | ToInt64(493) |
| Trunc | 指定された数値をリクエストされた小数点以下の桁数に切り捨てます。 | Trunc(<数値>, <数値>) | Trunc(36.9348934, 3) |
その他
以下の表には、上記以外の使用可能な関数が記載されています。
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Case | 式が true の場合は最初の値を返します。それ以外の場合は、2 番目の値を返します。 | Case(When(<式> <値>), Else(<値>)) | Case(When(a > b, "はい"), Else("いいえ")) |
| When | Case 関数の一部として使用されます。Case 内の式を確認するために使用されます。 | When(<式> <値>) | When(a > b, "はい") |
| Else | Case 関数の一部として使用されます。When 式が false の場合に、他のオプションを選択するために使用されます。 | Else(<値>) | Else("いいえ") |
| Coalesce | 最初の null 以外の値を返します。 | Coalesce(<値>, <値>) | Coalesce ("", "文字列") |
| Decode | 値が等しい場合は最初のオプションを返します。値が等しくない場合は 2 番目のオプションを返します。 | Decode(<値>, <値>, <値>, <値>) | Decode(1, 2, "true", "false") |
| GetEmailDomain | 指定されたメールアドレスからドメインを抽出します。 | GetEmailDomain(<文字列>) | GetEmailDomain("sample@example.com") |
| Iif | 条件が true の場合は最初のオプションを返し、条件が false の場合は 2 番目のオプションを返します。 | Iif(<条件>, <値>, <値>) | Iif(10 < 20, "true", "false") |
| IsEmptyString | 文字列が空の場合は最初のオプションを返します。それ以外の場合は、2 番目のオプションを返します。 | IsEmptyString(<文字列> ,<値>, <値>) | IsEmptyString("文字列", "はい", "いいえ") |
| NewUUID | 新しい一意の UUID を生成します。 | NewUUID() | NewUUID() |
| NoNull | 指定された文字列が空でない場合はその文字列を返し、指定された文字列が空の場合は空の文字列を返します。 | NoNull(<文字列>) | NoNull("テスト") |
| IsBitSet | 指定された数値に対してビット単位の論理積(&)を実行します。これにより、最初のパラメーター内のビットが 2 番目のパラメーターで指定された位置に設定されているかどうかを確認できます。 | IsBitSet(<数値>, <数値>) | IsBitSet(5, 3) |
| ClearBit | これにより、2 番目のパラメーターで指定された位置にある最初のパラメーター内のビットをクリアできます。 | ClearBit(<数値>, <数値>) | |
| SetBit | 指定された数値に対してビット単位の論理和(|)を実行します。これにより、最初のパラメーター内のビットを 2 番目のパラメーターで指定された位置に設定できます。 | SetBit(<数値>, <数値>) | SetBit(5, 3) |
| RowId | 行番号を返します。 | RowId() | RowId() |
| ToBoolean | 値をブール値に変換します。 | ToBoolean(<値>) | ToBoolean(a=b) |
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| Case | 式が true の場合は最初の値を返します。それ以外の場合は、2 番目の値を返します。 | Case(When(<式> <値>), Else(<値>)) | Case(When(a > b, "はい"), Else("いいえ")) |
| When | Case 関数の一部として使用されます。Case 内の式を確認するために使用されます。 | When(<式> <値>) | When(a > b, "はい") |
| Else | Case 関数の一部として使用されます。When 式が false の場合に、他のオプションを選択するために使用されます。 | Else(<値>) | Else("いいえ") |
| GetEmailDomain | 指定されたメールアドレスからドメインを抽出します。 | GetEmailDomain(<文字列>) | GetEmailDomain("sample@example.com") |
| Iif | 条件が true の場合は最初のオプションを返し、条件が false の場合は 2 番目のオプションを返します。 | Iif(<条件>, <値>, <値>) | Iif(10 < 20, "true", "false") |
| IsEmptyString | 文字列が空の場合は最初のオプションを返します。それ以外の場合は、2 番目のオプションを返します。 | IsEmptyString(<文字列> ,<値>, <値>) | IsEmptyString("文字列", "はい", "いいえ") |
| ToBoolean | 値が true の場合は 1 を返します。値が false の場合は 0 を返します。 | ToBoolean(<値>) | ToBoolean(a=b) |
| ToBooleanType | 値をブール値に変換します。 | ToBooleanType(<値>) | ToBooleanType(a=b) |
| IsBitSet | 指定された数値に対してビット単位の論理積(&)を実行します。これにより、最初のパラメーター内のビットが 2 番目のパラメーターで指定された位置に設定されているかどうかを確認できます。 | IsBitSet(<数値>, <数値>) | IsBitSet(5, 3) |
| ClearBit | これにより、2 番目のパラメーターで指定された位置にある最初のパラメーター内のビットをクリアできます。 | ClearBit(<数値>, <数値>) | |
| SetBit | 指定された数値に対してビット単位の論理和(|)を実行します。これにより、最初のパラメーター内のビットを 2 番目のパラメーターで指定された位置に設定できます。 | SetBit(<数値>, <数値>) | SetBit(5, 3) |
| RowId | 行番号を返します。 | RowId() | RowId() |
| NewUUID | 新しい一意の UUID を生成します。 | NewUUID() | NewUUID() |
| NoNull | 指定された文字列が空でない場合はその文字列を返し、指定された文字列が空の場合は空の文字列を返します。 | NoNull(<文字列>) | NoNull("テスト") |
| AESEncrypt | 指定された文字列を AES 暗号化タイプで暗号化します。 | AESEncrypt() | AESEncrypt("こんにちは") |
| ObjectConstruct | 提供されたキーと値のペアに基づいてオブジェクトを作成します。 | ObjectConstruct(<文字列>, <文字列>) | ObjectConstruct("キー", "値") |
文字列
文字列関数は、一連の文字列を操作する場合に使用します。
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 17-row-4 18-row-4 19-row-4 20-row-4 21-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| AllNonNull2 | 2 つの文字列を受け取り、そのすべてが null ではなく、空でないかどうかを確認します。 | AllNonNull2(<文字列>, <文字列>) | AllNonNull2("", "string2") |
| AllNonNull3 | 3 つの文字列を受け取り、そのすべてが null ではなく、空でないかどうかを確認します | AllNonNull3(<文字列>, <文字列>, <文字列>) | AllNonNull3("", "1", "3") |
| Ascii | 文字列を受け取り、結果を返します。 | Ascii(<文字列>) | Ascii ("foo") |
| Char | Unicode コードポイントの配列を受け取り、結果の文字列を返します。 | Char(<配列>) | Char([65, 68, 79, 66, 69]) |
| Charindex | メイン文字列内で指定された部分文字列の最初の発生を検索します。 | Charindex(<文字列>, <部分文字列>) | Charindex("bar@example.com", "@") |
| dataLength | 文字列に含まれるバイト数を返します。 | dataLength(<文字列>) | dataLength("マイ文字列") |
| GetLine | 指定された文字列のリクエストされた行を返します。 | GetLine(<文字列>, <数値>) | GetLine(multilinestring, 5) |
| IfEquals | 4 つの文字列を受け取り、最初の 2 つの文字列が等しい場合は 3 番目の文字列を返し、最初の 2 つの文字列が等しくない場合は 4 番目の文字列を返します。 | IfEquals(<文字列>, <文字列>, <文字列>, <文字列>) | IfEquals("a", "a", "はい", "いいえ") |
| IsMemoNull | 文字列が null の場合は 1 を返し、それ以外の場合は 0 を返します。 | IsMemoNull(<文字列>) | IsMemoNull("こんにちは") |
| JuxtWords | 2 つの文字列を受け取り、1 つの文字列に結合します。必要に応じて、文字列間にスペースが追加されます。 | JuxtWords(<文字列>, <文字列>) | JuxtWords("Hello", "World") |
| JuxtWords3 | 3 つの文字列を受け取り、1 つの文字列に結合します。必要に応じて、文字列間にスペースが追加されます。 | JuxtWords3(<文字列>, <文字列>, <文字列>) | JuxtWords3("Hello", "New", "World") |
| Left | 文字列を受け取り、指定された左端の文字を返します。 | Left(<文字列>, <数値>) | Left("部分文字列", 3) |
| Length | 文字列の長さを返します。 | Length(<文字列>) | Length("MyString") |
| Md5Digest | MD5 ハッシュ文字列を 16 進数表現に変換します。 | Md5Digest(<文字列>) | Md5Digest("文字列") |
| MemoContains | 文字列に指定された部分文字列が含まれているかどうかを確認します。 | MemoContains(<文字列>, <文字列>) | MemoContains("string", "str") |
| Right | 文字列を受け取り、指定された右端の文字を返します。 | Right(<文字列>, <数値>) | Right ("部分文字列", 3) |
| Smart | 各単語の最初の文字を大文字にして文字列を返します。 | Smart(<文字列>) | Smart("hello world") |
| Substring | 文字列を受け取り、指定された位置に基づいて、指定された文字列の一部を返します。 | Substring(<STRING>, <LEFT_NUMBER>, RIGHT_NUMBER>) | Substring("部分文字列", 3, 5) |
| Sha256Digest | SHA256 ハッシュ文字列を 16 進数表現に変換します。 | Sha256Digest(<文字列>) | Sha256Digest("文字列") |
| Sha512Digest | SHA512 ハッシュ文字列を 16 進数表現に変換します。 | Sha512Digest(<文字列>) | Sha512Digest("文字列") |
| ToString | 値を文字列として返します。 | ToString(<値>) | ToString(123) |
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 6-row-4 7-row-4 8-row-4 9-row-4 10-row-4 11-row-4 12-row-4 13-row-4 14-row-4 15-row-4 16-row-4 17-row-4 18-row-4 19-row-4 20-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| AllNonNull2 | 2 つの文字列を受け取り、そのすべてが null ではなく、空でないかどうかを確認します。 | AllNonNull2(<文字列>, <文字列>) | AllNonNull2("", "string2") |
| AllNonNull3 | 3 つの文字列を受け取り、そのすべてが null ではなく、空でないかどうかを確認します | AllNonNull3(<文字列>, <文字列>, <文字列>) | AllNonNull3("", "1", "3") |
| Char | Unicode コードポイントの配列を受け取り、結果の文字列を返します。 | Char(<配列>) | Char([65, 68, 79, 66, 69]) |
| Charindex | メイン文字列内で指定された部分文字列の最初の発生を検索します。 | Charindex(<文字列>, <部分文字列>) | Charindex("bar@example.com", "@") |
| dataLength | 文字列に含まれるバイト数を返します。 | dataLength(<文字列>) | dataLength("マイ文字列") |
| GetLine | 指定された文字列のリクエストされた行を返します。 | GetLine(<文字列>, <数値>) | GetLine(multilinestring, 5) |
| IfEquals | 4 つの文字列を受け取り、最初の 2 つの文字列が等しい場合は 3 番目の文字列を返し、最初の 2 つの文字列が等しくない場合は 4 番目の文字列を返します。 | IfEquals(<文字列>, <文字列>, <文字列>, <文字列>) | IfEquals("a", "a", "はい", "いいえ") |
| IsMemoNull | 文字列が null の場合は 1 を返し、それ以外の場合は 0 を返します。 | IsMemoNull(<文字列>) | IsMemoNull("こんにちは") |
| JuxtWords | 2 つの文字列を受け取り、1 つの文字列に結合します。必要に応じて、文字列間にスペースが追加されます。 | JuxtWords(<文字列>, <文字列>) | JuxtWords("Hello", "World") |
| JuxtWords3 | 3 つの文字列を受け取り、1 つの文字列に結合します。必要に応じて、文字列間にスペースが追加されます。 | JuxtWords3(<文字列>, <文字列>, <文字列>) | JuxtWords3("Hello", "New", "World") |
| Left | 文字列を受け取り、指定された左端の文字を返します。 | Left(<文字列>, <数値>) | Left("部分文字列", 3) |
| Length | 文字列の長さを返します。 | Length(<文字列>) | Length("MyString") |
| Line | 文字列から指定された番号の行を返します。 | Line(<文字列>, <数値>) | Line(multilinestring, 5) |
| Md5Digest | MD5 ハッシュ文字列を 16 進数表現に変換します。 | Md5Digest(<文字列>) | Md5Digest("文字列") |
| Replace | 文字列を受け取り、その部分文字列のすべてのインスタンスを置換部分文字列に置き換えます。 | Replace(<STRING>, <STRING>, <STRING>) | Replace("キャプテンスティーブ", "キャプテン", "エンジニア") |
| Right | 文字列を受け取り、指定された右端の文字を返します。 | Right(<文字列>, <数値>) | Right ("部分文字列", 3) |
| Sha256Digest | SHA256 ハッシュ文字列を 16 進数表現に変換します。 | Sha256Digest(<文字列>) | Sha256Digest("文字列") |
| Sha512Digest | SHA512 ハッシュ文字列を 16 進数表現に変換します。 | Sha512Digest(<文字列>) | Sha512Digest("文字列") |
| Smart | 各単語の最初の文字を大文字にして文字列を返します。 | Smart(<文字列>) | Smart("hello world") |
| ToString | 値を文字列として返します。 | ToString(<値>) | ToString(123) |
ウィンドウ
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| RowNum | テーブルパーティションとソート順序に基づいて行のシーケンスを返します。 | RowNum(PartitionBy(<式>), OrderBy(<式>)) | RowNum(PartitionBy(division), OrderBy(time)) |
| PartitionBy | 指定された式に基づいて、入力行を異なるパーティションに分割します。 | PartitionBy(<式>) | PartitionBy(division) |
| OrderBy | パーティションの結果を並べ替えます。 | OrderBy(<式>) | OrderBy(age) |
| Desc | OrderBy を使用すると、昇順ではなく降順で並べ替えることができます。 | Desc(OrderBy(<式>)) | Desc(OrderBy(age)) |
| table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 | |||
|---|---|---|---|
| 名前 | 説明 | 構文 | 例 |
| RowNum | テーブルパーティションとソート順序に基づいて行のシーケンスを返します。 | RowNum(PartitionBy(<式>), OrderBy(<式>)) | RowNum(PartitionBy(division), OrderBy(time)) |
| PartitionBy | 指定された式に基づいて、入力行を異なるパーティションに分割します。 | PartitionBy(<式>) | PartitionBy(division) |
| OrderBy | パーティションの結果を並べ替えます。 | OrderBy(<式>) | OrderBy(age) |
| Desc | OrderBy を使用すると、昇順ではなく降順で並べ替えることができます。 | Desc(OrderBy(<式>)) | Desc(OrderBy(age)) |