フィルター条件の定義

演算子の選択

フィルター条件内で、演算子を使用して 2 つの値をリンクする必要があります。

次に、使用可能な演算子のリストを示します。

演算子
目的

次と等しい
2 番目の「値」列に入力されたデータと同一の結果を返します。
姓(@lastName)が「佐藤」と等しいは、姓が佐藤の受信者のみを返します。
より大きい
入力された値より大きい値を返します。
年齢(@age)が 50 より大きいは、「50」より大きいすべての値(「51」、「52」など)を返します。
より小さい
入力された値より小さい値を返します。
作成日(@created)が「DaysAgo(100)」より小さいは、過去 100 日以内に作成されたすべての受信者を返します。
次よりも大きいか等しい
入力された値より大きいか等しいすべての値を返します。
年齢(@age)が「30」よりも大きいか等しいは、30 歳以上のすべての受信者を返します。
次よりも小さいか等しい
入力された値より小さいか等しいすべての値を返します。
年齢(@age)が「60」よりも小さいか等しいは、60 歳以下のすべての受信者を返します。
次と等しくない
入力された値と等しくないすべての値を返します。
言語(@language)が「英語」と等しくない
次で始まる
入力された値で始まる結果を返します。
アカウント番号(@account)が「32010」で始まる。
次で始まらない
入力された値で始まらない結果を返します。
アカウント番号(@account)が「20」で始まらない
次を含む
入力された値を含む結果を返します。
E メールドメイン(@domain)が「mail」を含むは、「mail」を含むすべてのドメイン名を返します。したがって、「gmail.com」ドメインも返されます。
次を含まない
入力された値を含まない結果を返します。
E メールドメイン(@domain)が「vo」を含まない。この場合、「vo」を含むドメイン名は返されません。結果には「Voila.jp」ドメイン名は表示されません。
次に類似
次に類似」は、「次を含む」演算子と非常によく似ています。値に % ワイルドカード文字を挿入できます。
姓(@lastName)が「Jon%s」に類似している。ここでは、オペレーターが「n」と「s」の間の欠落している英数字を忘れたので、ワイルドカード文字が「Jones」という名前を検索するための「ジョーカー」として使用されています。
次に類似しない
次に類似」と似ています。入力した値を収集しないようにすることができます。この演算子でも、入力した値に ワイルドカード文字が含まれている必要があります。
姓(@lastName)が「Smi%h」に類似していない。この場合、姓が「Smi%h」の受信者は返されません。
空である
この場合、検索する結果は、2 番目の「値」列にある空の値と一致します。
モバイル(@mobilePhone)が空であるは、モバイル番号がないすべての受信者を返します。
空でない
空である」演算子の逆の機能です。2 番目の「値」列にあるデータを入力する必要はありません。
E メール(@email)は空でない
次に含まれる
指定された値に含まれる結果を返します。これらの値はコンマで区切る必要があります。
生年月日(@birthDate)が「1979/12/10, 1984/12/10」に含まれるは、これらの日付の間に生まれた受信者を返します。
次に含まれない
次に含まれる」演算子と同様に機能します。ここでは、入力された値に基づいて受信者を除外します。
生年月日(@birthDate)が「1972/12/10, 1984/12/10」に含まれない。前の例とは異なり、これらの日付の間に生まれた受信者は返されません。

「および」、「または」、「例外」の使用

複数のフィルター条件を使用するクエリでは、条件間のリンクを定義する必要があります。次の 3 つのリンクが使用可能です。

  • および」では、2 つのフィルター条件を組み合わせることができます。
  • または」では、別の選択肢を指定できます。
  • 例外」では、例外を定義できます。

デフォルトで表示されている「および」をクリックし、ドロップダウンリストから選択します。

  • および:条件を追加し、オーバーフィルターが可能です。

  • または:条件を追加し、オーバーフィルターが可能です。

    次の例では、E メールドメインに「orange.co.jp」が含まれているか、郵便番号が「123」で始まる受信者を検索できます。

  • 例外:2 つのフィルターがあり、最初のフィルターで値が返されない場合、このタイプのリンクでは例外が作成されます。

    次の例では、E メールドメインに「orange.co.jp」が含まれている受信者が返されますが、受信者の姓が「田中」である場合を除きます。

次の例のフィルターでは、スペイン語を話す受信者、またはモバイル番号がある女性、またはアカウント番号がない受信者、および会社名が「N」の文字で始まる受信者が表示されます。

条件の優先順位付け

この節では、ツールバーの青色の矢印を使用して条件を優先順位付けする方法について説明します。

  • 右向き矢印を使用して、括弧レベルをフィルターに追加できます。

  • 左向き矢印を使用して、選択した括弧レベルをフィルターから削除できます。

  • 上下矢印を使用して、条件を移動することで実行順序を変更できます。

この例では、矢印を使用して括弧レベルを削除する方法を示します。まず、次のフィルター条件を作成します。市区町村が横浜市と等しい、または性別が男性と等しい、およびモバイルが指定されていない、またはアカウント番号が「95」で始まる、および会社名が「A」で始まる

性別(@gender)が男性と等しい​フィルター条件にカーソルを置き、括弧レベルを削除​矢印をクリックします。

性別(@gender)が男性と等しい」条件が括弧の外に出されます。この条件は、「市区町村が横浜市と等しい」条件と同じレベルに移動しました。これらの条件は、「および」でリンクされます。

抽出するデータの選択

使用可能フィールドはテーブルごとに異なります。すべてのフィールドは、メイン要素​と呼ばれるメインノードに保存されます。次の例では、使用可能フィールドは受信者テーブルにあります。フィールドは常にアルファベット順に表示されます。

選択したフィールドの詳細がウィンドウの下部に表示されます。例えば、「E メールドメイン」フィールドは「SQL 計算フィールド」であり、拡張は​(@domain)​です。

メモ

使用可能フィールドを検索するには、検索​ツールを使用します。

出力列に追加するには、使用可能フィールドをダブルクリックします。クエリの最後に、選択した各フィールドに​データのプレビュー​ウィンドウで列が作成されます。

詳細フィールドはデフォルトでは表示されません。すべてを表示するには、使用可能フィールドの右下隅で​詳細フィールドを表示​をクリックします。前のビューに戻るには、再度クリックします。

例えば、受信者テーブルで、詳細フィールドは「ブール値 1」、「ブール値 2」、「ブール値 3」、「「フォルダー」リンクの外部キー」などです。

次の例は、受信者テーブルの使用可能フィールドを示しています。

フィールドの各種カテゴリ:

アイコン
説明

単純フィールド
E メール、性別など
プライマリキー.この SQL フィールドによって、テーブル内のレコードが識別されます。
識別子受信者はプライマリキーであり、識別子は定義ごとに一意です。
外部キー。別のテーブルへのリンクとして使用されます。
受信者外部キー、サービス外部キーなど。
計算フィールド。このタイプのフィールドは、リクエストに応じてデータベース内の値を使用して計算されます。
年齢、E メールドメインなど。
長いテキストを含むフィールド。
コメント、住所全体など。
インデックス付きの SQL フィールド。
姓名、ISO コードなど。

テーブルおよびコレクション要素へのリンク:

アイコン
説明

特定のテーブルへのリンク。これらは 1 対 1 タイプの関連付けと一致します。1 つのソーステーブルは、1 つのターゲットテーブルにのみ一致します。例えば、1 人の受信者は 1 つの国にのみリンクすることができます。
フォルダー、都道府県、国など。
特定のテーブルのコレクション要素。これらは 1 対 N タイプの関連付けと一致します。1 つのソーステーブルは複数のターゲットテーブルと一致することができますが、1 つのターゲットテーブルは 1 つのソーステーブルとのみ一致することができます。例えば、1 人の受信者は「n」個の購読レターを購読することができます。
購読、リスト、除外ログなど。
メモ
  • 式を編集する出力列を追加するには、追加​ボタン(サイドアイコンバーの上部)を使用します。式の編集について詳しくは、式の作成を参照してください。
  • 出力列を削除するには、赤い「x」(削除)をクリックします。
  • 出力列の順序を変更するには、矢印を使用します。
  • 値の配分​は、選択したフィールドの値の配分を表示する方法として機能します(例えば、受信者の市区町村、受信者の言語などにリンクした配信)。

計算フィールドの作成

必要に応じて、データフォーマット中に列を追加します。計算フィールドによって、データのプレビューセクションに列が追加されます。計算フィールドを追加​をクリックします。

次の 4 つのタイプの計算フィールドがあります。

  • 固定文字列:一連の文字列を追加できます。

  • JavaScript タグを含む文字列:一連の文字列と JavaScript ディレクティブを組み合わせた計算フィールドの値。

  • JavaScript 式:計算フィールドの値は JavaScript 関数評価の結果です。返される値はタイプ指定できます(数値、日付など)。

  • 列挙:このタイプのフィールドでは、いずれかの出力列の内容を新しい列で使用または変更できます。

    列のソース値を使用し、宛先値を割り当てることができます。この宛先値は新しい出力列に表示されます。

    列挙」タイプ計算フィールドを追加する例は、この節で確認できます。

    列挙」タイプ計算フィールドには、次の 4 つの条件を含めることができます。

    • ソースの値を保持」では、ソース値が変更されずにターゲットに復元されます。
    • 次の値を使用」では、定義されていないソース値に対してデフォルトの宛先値を入力できます。
    • 警告を生成して続行」では、ソース値を変更できないことがユーザーに警告されます。
    • エラーを生成してラインを却下」では、ラインの計算およびインポートが回避されます。

挿入したフィールドの詳細を表示するには、計算済みフィールドの詳細​をクリックします。

この計算フィールドを削除するには、計算フィールドを削除​のバツ印をクリックします。

式の作成

式編集ツールを使用すると、集計の計算、関数の生成または式を使用した数式の編集をおこなうことができます。

次の例は、プライマリキーに対してカウントを実行する方法を示しています。

次の手順に従います。

  1. 抽出するデータ​ウィンドウで「追加」をクリックします。数式のタイプ​ウィンドウで、式を入力する数式のタイプを選択します。

    フィールドのみ」、「集計」、「」など、様々なタイプの数式を使用できます。

    集計関数のプロセス」および「カウント」を選択します。「次へ」をクリックします。

  2. プライマリキーが計算されます。

次に、数式のタイプ​ウィンドウで使用可能な選択肢の詳細な表示を示します。

  1. 「フィールドのみ****」では、選択するフィールドウィンドウに戻ることができます。

  2. 集計」(「集計関数のプロセス」)。使用する集計の例は次のとおりです。

    • カウント」では、プライマリキーカウントを実行できます。

    • 合計」では、顧客による 1 年間のすべての購入を合計できます。

    • 最大値」では、「n」製品を最も多く購入した顧客を検索できます。

    • 最小値」では、顧客を並べ替え、最近オファーを購読した顧客を検索できます。

    • 平均」。この関数では、受信者の平均年齢を計算できます。

      ユニーク」ボックスでは、列の一意のゼロ以外の値を収集できます。例えば、受信者のすべてのトラッキングログを収集し、すべて同じ受信者に関連するトラッキングログを値 1 に変更できます。

  3. 」では、式を編集​ウィンドウを開きます。これにより、数字が非常に多く、入力エラーを起こしやすい電話番号を検出できます。

    使用可能なすべての関数のリストについては、関数のリストを参照してください。

関数のリスト

」タイプの数式を選択すると、式を編集ウィンドウが表示されます。「集計」、「文字列」、「日付」、「数値」、「通貨」、「ジオマーケティング」、「ウィンドウイング関数」、「その他」など、様々なカテゴリの関数を使用可能フィールドに関連付けることができます。

式エディターは次のように表示されます。

式エディターではデータベーステーブルのフィールドを選択し、高度な関数を追加できます。次の関数を使用できます。

集計

名前
説明
構文
Avg
数値タイプの列の平均を返します
Avg(<値>)
Count
列の null でない値をカウントします
Count(<値>)
CountAll
返される値をカウントします(すべてのフィールド)
CountAll()
Countdistinct
列の null でないユニーク値をカウントします
Countdistinct(<値>)
Max
数値、文字列または日付タイプの列の最大値を返します
Max(<値>)
Min
数値、文字列または日付タイプの列の最小値を返します
Min(<値>)
StdDev
数値、文字列または日付タイプの列の標準偏差を返します
StdDev(<値>)
Sum
数値、文字列または日付タイプの列の値の合計を返します
Sum(<値>)

文字列

名前
説明
構文
AllNonNull2
すべてのパラメーターが null でなく空でもないかどうかを示します
AllNonNull2(<文字列>, <文字列>)
AllNonNull3
すべてのパラメーターが null でなく空でもないかどうかを示します
AllNonNull3(<文字列>, <文字列>, <文字列>)
Ascii
文字列の最初の文字の ASCII 値を返します
Ascii(<文字列>)
Char
ASCII コード「n」に対応する文字を返します
Char(<数値>)
Charindex
文字列 1 における文字列 2 の位置を返します
Charindex(<文字列>, <文字列>)
GetLine
文字列の n 番目(1 から n)のラインを返します
GetLine(<文字列>)
IfEquals
最初の 2 つのパラメーターが等しい場合に、3 番目のパラメーターを返します。等しくない場合は、最後のパラメーターを返します
IfEquals(<文字列>, <文字列>, <文字列>, <文字列>)
IsMemoNull
パラメーターとして渡されたメモが null かどうかを示します
IsMemoNull(<メモ>)
JuxtWords
パラメーターとして渡された文字列を連結します。必要に応じて、文字列間にスペースを追加します.
JuxtWords(<文字列>, <文字列>)
JuxtWords3
パラメーターとして渡された文字列を連結します。必要に応じて、文字列間にスペースを追加します
JuxtWords3(<文字列>, <文字列>, <文字列>)
LPad
左側の完成した文字列を返します
LPad(<文字列>, <数値>, <文字>)
Left
文字列の最初の n 文字を返します
Left(<文字列>, <数値>)
Length
文字列の長さを返します
Length(<文字列>)
Lower
文字列を小文字で返します
Lower(<文字列>)
Ltrim
文字列の左側の空白を削除します
Ltrim(<文字列>)
Md5Digest
文字列の MD5 キーの 16 進数表現を返します
Md5Digest(<文字列>)
MemoContains
パラメーターとして渡す文字列をメモに含めるかどうかを指定します
MemoContains(<メモ>、<文字列>)
RPad
右側の完成した文字列を返します
RPad(<文字列>, <数値>, <文字>)
Right
文字列の最後の n 文字を返します
Right(<文字列>)
Rtrim
文字列の右側の空白を削除します
Rtrim(<文字列>)
Smart
各単語の最初の文字を大文字にして文字列を返します
Smart(<文字列>)
Substring
文字列の n1 文字目から始まる長さ n2 文字の部分文字列を抽出します
Substring(<文字列>, <オフセット>, <長さ>)
ToString
数値を文字列に変換します
ToString(<数値>, <数値>)
Upper
文字列を大文字で返します
Upper(<文字列>)
VirtualLink
他の 2 つのパラメーターが等しい場合に、パラメーターとして渡されたリンクの外部キーを返します
VirtualLink(<数値>, <数値>, <数値>)
VirtualLinkStr
他の 2 つのパラメーターが等しい場合に、パラメーターとして渡されたリンクの外部(テキスト)キーを返します
VirtualLinkStr(<文字列>, <数値>, <数値>)
dataLength
文字列のサイズを返します
dataLength(<文字列>)

日付

名前
説明
構文
AddDays
日付に日数を追加します
AddDays(<日付>, <数値>)
AddHours
日付に時間数を追加します
AddHours(<日付>, <数値>)
AddMinutes
日付に分数を追加します
AddMinutes(<日付>, <数値>)
AddMonths
日付に月数を追加します
AddMonths(<日付>, <数値>)
AddSeconds
日付に秒数を追加します
AddSeconds(<日付>, <数値>)
AddYears
日付に年数を追加します
AddYears(<日付>, <数値>)
DateOnly
日付のみを返します(時刻は 0:00)*
DateOnly(<日付>)
Day
日付の日を表す数を返します
Day(<日付>)
DayOfYear
日付の年の日数を返します
DayOfYear(<日付>)
DaysAgo
現在の日付 - n 日に対応する日付を返します
DaysAgo(<数値>)
DaysAgoInt
現在の日付 - n 日に対応する日付(整数 yyyymmdd)を返します
DaysAgoInt(<数値>)
DaysDiff
2 つの日付の間の日数を返します
DaysDiff(<終了日>, <開始日>)
DaysOld
年齢(日数)を返します
DaysOld(<日付>)
GetDate
サーバーの現在のシステム日付を返します
GetDate()
Hour
日付の時間を返します
Hour(<日付>)
HoursDiff
2 つの日付の間の時間数を返します
HoursDiff(<終了日>, <開始日>)
Minute
日付の分を返します
Minute(<日付>)
MinutesDiff
2 つの日付の間の分数を返します
MinutesDiff(<終了日>, <開始日>)
Month
日付の月を表す数を返します
Month(<日付>)
MonthsAgo
現在の日付 - n ヶ月に対応する日付を返します
MonthsAgo(<数値>)
MonthsDiff
2 つの日付の間の月数を返します
MonthsDiff(<終了日>, <開始日>)
MonthsOld
年齢(月数)を返します
MonthsOld(<日付>)
Second
日付の秒を返します
Second(<日付>)
SecondsDiff
2 つの日付の間の秒数を返します
SecondsDiff(<終了日>, <開始日>)
SubDays
日付から日数を引きます
SubDays(<日付>, <数値>)
SubHours
日付から時間数を引きます
SubHours(<日付>, <数値>)
SubMinutes
日付から分数を引きます
SubMinutes(<日付>, <数値>)
SubMonths
日付から月数を引きます
SubMonths(<日付>, <数値>)
SubSeconds
日付から秒数を引きます
SubSeconds(<日付>, <数値>)
SubYears
日付から年数を引きます
SubYears(<日付>, <数値>)
ToDate
日付 + 時間を日付に変換します
ToDate(<日付 + 時刻>)
ToDateTime
文字列を日付 + 時刻に変換します
ToDateTime(<文字列>)
TruncDate
日付 + 時刻を最も近い秒に丸めます
TruncDate(@lastModified, <秒数>)
TruncDateTZ
日付と時刻を指定された精度(秒)に丸めます
TruncDateTZ(<日付>, <秒数>, <タイムゾーン>)
TruncQuarter
日付を四半期に丸めます
TruncQuarter(<日付>)
TruncTime
時刻部分を最も近い秒に丸めます
TruncTime(<日付>, <秒数>)
TruncWeek
日付を週に丸めます
TruncWeek(<日付>)
TruncYear
日付 + 時刻をその年の 1 月 1 日に丸めます
TruncYear(<日付>)
TruncWeek
日付の週の日を表す数を返します
WeekDay(<日付>)
Year
日付の年を表す数を返します
Year(<日付>)
YearAnd Month
日付の年と月を表す数を返します
YearAndMonth(<日付>)
YearsDiff
2 つの日付の間の年数を返します
YearsDiff(<終了日>, <開始日>)
YearsOld
満年齢を返します
YearsOld(<日付>)
メモ

Dateonly 関数はオペレーターのタイムゾーンではなく、サーバーのタイムゾーンを考慮することに注意してください。

数値

名前
説明
構文
Abs
数値の絶対値を返します
Abs(<数値>)
Ceil
ある特定の数値以上の最小の整数を返します
Ceil(<数値>)
Floor
ある特定の数値以上の最大の整数を返します
Floor(<数値>)
Greatest
2 つの数のうち大きい方を返します
Greatest(<数値 1>, <数値 2>)
Least
2 つの数のうち小さい方を返します
Least(<数値 1>, <数値 2>)
Mod
整数の割り算 n1 ÷ n2 の余りを返します
Mod(<数値 1>, <数値 2>)
Percent
割合で表される 2 つの数の比率を返します
Percent(<数値 1>, <数値 2>)
Random
ランダムな値を返します
Random()
Round
数値を n 桁に丸めます
Round(<数値>, <小数点以下の桁数>)
Sign
数値の符号を返します
Sign(<数値>)
ToDouble
整数を浮動小数に変換します
ToDouble(<数値>)
ToInt64
浮動小数を 64 ビットの整数に変換します
ToInt64(<数値>)
ToInteger
浮動小数を整数に変換します
ToInteger(<数値>)
Trunc
n1 を n2 の桁数に切り捨てます
Trunc(<n1>, <n2>)
  1. 通貨
名前
説明
構文
ConvertCurrency
変換元通貨の金額を変換先通貨の金額に換算します
ConvertCurrency(<金額>, <変換元通貨>, <変換先通貨>, <変換日>)
FormatCurrency
表示される金額を選択した通貨設定に基づいて書式設定します
FormatCurrency(<金額>, <通貨>)

Geomarketing

名前
説明
構文
Distance
経度と緯度で定義された 2 つのポイントの距離を返します。
Distance(<経度 A>, <緯度 A>, <経度 B>, <緯度 B>)

その他

名前
説明
構文
Case
条件が true の場合は値 1 を返します。そうでない場合は値 2 を返します
(When(<条件>, <値 1>), Else(<値 2>))
ClearBit
値のフラグを削除します
ClearBit(<識別子>, <フラグ>)
Coalesce
値 1 がゼロまたは null の場合は値 2 を返し、それ以外の場合は値 1 を返します
Coalesce(<値 1>, <値 2>)
Decode
値 1 = 値 2 の場合は値 3 を返します。そうでない場合は値 4 を返します
Decode(<値 1>, <値 2>, <値 3>, <値 4>)
Else
値 1 を返します(case 関数のパラメーターとしてのみ使用できます)
Else(<値 1>, <値 2>)
GetEmailDomain
E メールアドレスからドメインを抽出します
GetEmailDomain(<値>)
GetMirrorURL
ミラーページサーバーの URL を取得します
GetMirrorURL(<値>)
Iif
式が true の場合は値 1 を返します。そうでない場合は値 2 を返します
Iif(<条件>, <値 1>, <値 2>)
IsBitSet
値にフラグが含まれているかどうかを示します
IsBitSet(<識別子>, <フラグ>)
IsEmptyString
文字列 1 が空の場合は値 2 を返し、それ以外の場合は値 3 を返します
IsEmptyString(<値 1>, <値 2>, <値 3>)
NoNull
引数が NULL の場合は、空の文字列を返します
NoNull(<値>)
RowId
ライン番号を返します
RowId
SetBit
値に強制的にフラグを指定します
SetBit(<識別子>, <フラグ>)
ToBoolean
数値をブール値に変換します
ToBoolean(<数値>)
When
式が true の場合は値 1 を返します。そうでない場合は値 2 を返します(case 関数のパラメーターとしてのみ使用できます)
When(<条件>, <値 1>)

ウィンドウイング関数

名前
説明
構文
Desc
降順ソートを適用します
Desc(<値 1>)
OrderBy
パーティション内の結果を並べ替えます
OrderBy(<値 1>)
PartitionBy
テーブルのクエリの結果を区分します
PartitionBy(<値 1>)
RowNum
テーブルのパーティションと並べ替えシーケンスに基づいてライン番号を生成します
RowNum(PartitionBy(<値 1>), OrderBy(<値 1>))

このページ