メインコンテンツまでスキップ

抽出条件

抽出条件をパラメータ化する方法を説明します。

抽出条件をパラメータ化する場合は、主要キーをキーとするオブジェクトとして表現します。

主要キー

title

抽出条件の名称。

grouping

条件の結合方法。

  • true = AND
  • false = OR

conditions

項目ごとの条件。

「項目ごとの条件」は項目名をキーとして、その値に「条件のとりかた」と「付加情報」(からなる配列)を結びつけたオブジェクトとします。

キーとなる項目名は以下の通りです。

種別項目名
会員IDid
登録日時regist_date
更新日時update_date
一括処理日時batch_date
アップロード日時upload_date
最終ホストlast_host
最終REFERERlast_referer
最終USER_AGENTlast_useragent
クリックカウントフラグclick_count_flag
その他,ユーザ定義項目e_## (##は項目ID)
備考

なお、別のデータベース項目のリレーション属性により参照先となっている場合は、参照元データベースの項目(該当のリレーション属性を持つ項目を除く)についても指定可能です。

条件のとりかた

「条件のとりかた」はint型の値とし、以下の通りです。

条件のとりかた内容
(条件を指定しない)1条件を指定しない
完全に一致2条件値が対象値(会員情報の該当項目における値) と完全に一致する
前方に一致3条件値が対象値の前方(先頭基準)に含まれる
後方に一致4条件値が対象値の後方(末尾基準)に含まれる
含む(複数選択項目の場合は「全てを含む」)5条件値が対象値に含まれる
完全に一致しない(複数選択項目の場合は「全てを含まない」)6条件値が対象値と完全に異なる
前方に一致しない7条件値が対象値の前方(先頭基準)に含まれない
後方に一致しない8条件値が対象値の後方(末尾基準)に含まれない
含まない9条件値が対象値に含まれない
データなし10対象値に何も記述されていない
選択11対象値が真
未選択12対象値が偽
何れかを含む13条件値がいずれかの対象値を含む
何れかを含まない14条件値が対象値に含まれない
選択した個数15条件値と対象値の個数が等しい
キャリア16条件値が対象配信キャリアと等しい
エラー回数17条件値が対象エラー回数と等しい
履歴19条件値が対象アップロード日時と等しい
データあり20対象値に何かしら記述されている(「データなし」の反対)
実行日基準(月単位)26対象日時が抽出実行日の前後一定期間の範囲(月単位)
実行日基準(日単位)29対象日時が抽出実行日の前後一定期間の範囲(日単位)
警告

「テキスト(暗号化)」項目を条件に指定することはできません。

各項目種別毎に使用できる「条件のとりかた」は以下の通りです。

項目種別指定可能な「条件のとりかた」値
会員ID1, 5, 9
テキスト1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
最終ホスト1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
最終REFERER1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
URL1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
パスワード(平文)1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
郵便番号1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
電話番号1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
メールアドレス1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 20
テキストエリア1, 3, 4, 5, 7, 8, 9, 10, 20
整数1, 5, 9, 10, 20
単一選択1, 5, 9, 10, 20
都道府県1, 5, 9, 10, 20
性別1, 5, 9, 10, 20
未既婚1, 5, 9, 10, 20
はい/いいえ1, 5, 9, 10, 20
日付1, 5, 9, 10, 20, 26, 29
登録日時1, 5, 9, 10, 20, 26, 29
更新日時1, 5, 9, 10, 20, 26, 29
一括処理日時1, 5, 9, 10, 20, 26, 29
複数選択1, 2, 5, 6, 9, 10, 13, 14, 15, 20
選択1, 11, 12
クリックカウントフラグ1, 5, 9, 13, 14
アップロード日時1, 10, 19, 20
参照元データベースのリレーション1, 13, 14
最終USER_AGENT1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 16, 20
パスワード(ハッシュ)1
自動採番1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20
警告

「パスワード(ハッシュ)項目」は「(条件を指定しない)」しか指定できません。

「付加情報」も配列であり、何を指定するかは項目種別と「条件のとりかた」によって異なる。

IDの場合

キー
idsarray会員IDの配列array(1, 3, 5)

テキスト、URL、パスワード(平文)、郵便番号、電話番号、テキストエリア、最終ホスト、最終REFERER、自動採番の場合

キー
valuestring検索対象の文字列 (「条件を指定しない」から「含まない」まで)Abc

メールアドレスの場合

キー
valuestring検索対象の文字列 (「条件を指定しない」から「含まない」まで)abc
min_valueintエラー回数の下限 (「エラー回数」の場合)3
max_valueintエラー回数の上限 (「エラー回数」の場合)5
carriersarrayキャリアの配列 (「キャリア」の場合。 キャリアは以下のいずれか: other, docomo, au, softbank, vodafone, jphone, willcom, iphone)other, docomo, au, willcom
備考

iphone については @i.softbank.jp のアドレスが対象です。 @softbank.ne.jp は含まれません。

整数の場合

キー
min_valueint下限3
max_valueint上限5

単一選択、都道府県、性別、未既婚、はい/いいえの場合

キー
valuesarray選択肢IDの配列4, 5, 10

複数選択の場合

キー
optionsarray選択肢IDの配列 (「条件を指定しない」から「どれも含まない」まで)2, 7, 15
min_valueint選択した個数の下限 (「選択した個数」の場合)3
max_valueint選択した個数の上限 (「選択した個数」の場合)5

日付、登録日時、更新日時、一括処理日時の場合

キー範囲
start_datestring開始日付 (「条件を指定しない」から「含まない」まで)-2007-01-11
end_datestring終了日付 (「条件を指定しない」から「含まない」まで)-2007-12-31
calc_start_valueint抽出実行日の前後12ヵ月の範囲の開始月 (「実行日基準(月単位)」の場合)-12~12-2
calc_end_valueint抽出実行日の前後12ヵ月の範囲の終了月 (「実行日基準(月単位)」の場合)-12~1210
calc_ignore_yearbool項目に設定されている「年」の情報を無視し、calc_start_value および calc_end_value で指定した範囲の「月日」を抽出対象とする(「実行日基準(月単位)」の場合)-true
calc_day_start_valueint抽出実行日の前後30日の範囲の開始日 (「実行日基準(日単位)」の場合)-30~30-2
calc_day_end_valueint抽出実行日の前後30日の範囲の終了日 (「実行日基準(日単位)」の場合)-30~3010

クリックカウントフラグの場合

以下の付加情報を1セットとして配列に指定する。

キー
delivery_idint配信ID またはエージェント配信管理ID724
delivery_typeint1 … 通常配信の場合(固定値) 2 … エージェント配信の場合(固定値)1
valuesarrayクリックカウントIDの配列441, 445, 448

クリックカウントフラグ付加情報は以下配列として表現される。(PHPの記述方法で記載)

"clickcount_flag" => array(13, array(
array("delivery_id" => 40, "delivery_type" => 2, "values" => array(2582, 2583, 2584)),
array("delivery_id" => 920, "delivery_type" => 1, "values" => array(185, 188)),
)

アップロード日時の場合

キー
valuesarrayアップロード日時履歴 (UNIX タイムスタンプ)1212376393, 1212137705

選択の場合

なし。(実際には空の配列を返却する)

項目タイプ項目ID条件
登録日時12009年以降
メールアドレス4後方が"@example.com"に一致
単一選択61を選択
複数選択73か5を選択

上記の会員情報は以下の連想配列として表現される。(PHPの記述方法で記載)

array(
"title" => "単一選択に1を選択、複数選択に3か5を選択、ドメインが@tricorn.co.jp、2009年以降に登録",
"grouping" => true,
"conditions" => array(
"regist_date" => array(5, array("start_date" => "2009-01-01")),
"e_4" => array(4, array("value" => "@tricorn.co.jp")),
"e_6" => array(13, array(1)),
"e_7" => array(13, array(3, 5))
)
);

参照元データベースのリレーション属性を持つ項目の場合

なし。(実際には空の配列を設定する)

参照元データベースのリレーション属性項目を使った、参照先データベースの抽出条件は以下のような配列として表現される。

サンプルの項目は以下の通りと仮定する。

参照元データベース (リレーション属性を持つ項目があるデータベース)

  • "e_100": リレーション属性項目
  • "e_101": テキスト項目

参照先データベース

  • "e_200": 重複キー。
    • "e_100" のリレーションのため自動的に選択される。
  • "e_201": 単一選択項目

(PHPの記述方法で記載)

$conditions = array(
'e_100' => array(13, array()), // リレーション属性を持つ項目
'e_101' => array(2, array("value" => "商品1")), // 参照元データベース
'e_201' => array(5, array('values' => array(1))) // 参照先データベース
);
$condition_info = array(
"title" => "リレーションを使った抽出条件",
"grouping" => true,
"conditions" => $conditions
);

最終USER_AGENTの場合

キー
valuestring検索対象の文字列 (「条件を指定しない」から「含まない」まで)abc
carriersarrayキャリアの配列 (「キャリア」の場合。 キャリアは以下のいずれか: other, docomo,au,softbank,willcom,iphone,android) ※iOS、Android以外のスマートフォン、およびiPad等のタブレット端末は「other」で抽出されるother, docomo, au, willcom, iphone

サンプル

{
"title": "単一選択に1を選択、複数選択に3か5を選択、ドメインが@tricorn.co.jp、2009年以降に登録",
"grouping": true,
"conditions": {
"regist_date": [
5,
{
"start_date": "2009-01-01"
}
],
"e_4": [
4,
{
"value": "@tricorn.co.jp"
}
],
"e_6": [
13,
[1]
],
"e_7": [
13,
[3, 5]
]
}
}