# モデルクエリ API
このドキュメントに記載されている内容は、TA の高度な使用機能に属しており、関連する機能の経験を持つユーザーの参照に適しています。ドキュメントの内容に疑問がある場合は、データコンサルタントに 1 対 1 のサポートを依頼してください。
モデルクエリ API は、主にさまざまなデータ分析レポートを取得するために使用されます。
参照してOpen APIドキュメントの呼び出しメソッドの説明を参照してください。
# 一、共通パラメータ
# プロパティ表現
ほとんどすべての API は、フィルタリング、グループ化、集約などの属性を使用します。属性には、イベント属性、ユーザー属性、ユーザーサブグループ属性が含まれ、属性は通常、名前とテーブルタイプの 2 つのフィールドで表現されます。たとえば、州のイベント属性を表す式は次のとおりです。
{
"tableType":"event",
"columnName":"#province"
}
ユーザー属性も同様です。たとえば、ユーザーレベルを表します。
{
"tableType":"user",
"columnName":"user_level"
}
# フィルター式
フィルター式は、ほとんどの API にも適用され、次の形式の JSON を使用して、特定のイベントまたはユーザーのフィルター操作を表します
{
// 表示 filts 里的各个条件的关系是 或 还是 且
"relation": "and",
// 具体的条件列表,可以有多个
"filts": [{
// 条件的左值,是一个属性
"tableType":"event",
"columnName": "#os",
// 条件的比较符,这里表示等于
"comparator": "equal",
// 条件的比较值,根据不同的比较符可以有一个或者多个
"ftv": [
"ios"
]
},
{
"tableType":"user",
"columnName":"user_level",
"comparator": "equal",
"ftv": [
"5"
]
}]
}
現在サポートされている演算子は次のとおりです。
- equal / notEqual
は等しい/等しくないことを表し、文字列、数値型に有効です。ftv が複数ある場合は In または Not In に相当する。例えば、レベル 3 と 4 のユーザーを選別したい:
{
"tableType":"user",
"columnName":"user_level",
"comparator": "equal",
"ftv": ["3","5"]
}
- isTrue/isFalse
ブール型にのみ有効です。
- isNull/not Null
プロパティに値があるかどうかは、文字列、数値タイプに有効です。
- include / notInclude
子文字列を含むか含まないかを表します:
{
"tableType":"user",
"columnName":"channel",
"comparator": "include",
"ftv": ["应用宝"]
}
- less/greater/range:より小さい/より大きい/より小さい、より大きいを表し、range は前閉後閉の区間で、対数値タイプと時間タイプが有効である。たとえば、アイテムの残りの数が 3 から 9 の間のすべてのイベントをフィルター処理します。
{
"tableType":"event",
"columnName":"count_left",
"comparator": "range",
"ftv": [3, 9]
}
または、最後のログイン時間が 2019-11-13 00:00~2019-11-23 00:00 の間のすべてのユーザーを選別します
{
"tableType":"user",
"columnName":"latest_login_time",
"comparator": "range",
"ftv":["2019-11-13 00:00","2019-11-23 00:00"]
}
- regex Match/not Regex Match
正則一致または正則不一致は、文字列タイプにのみ有効です。
- relativeCurrentBetween / relativeCurrentBefore
日付タイプの演算子は、相対現在時刻が過去 N 日から過去 M 日の間/相対現在時刻が過去 N 日前であることをそれぞれ示す。たとえば、過去 3 日前に現在の時間に対してすべての登録時間をフィルタリングしたいユーザー:
{
"tableType":"user",
"columnName":"register_time",
"comparator": "relativeCurrentBefore",
"ftv": [3]
}
または、すべての登録時間が現在の時間に対して過去 9 日から過去 3 日間のユーザーを選別します
{
"tableType":"user",
"columnName":"register_time",
"comparator": "relativeCurrentBetween",
"ftv": [9, 3]
}
- relativeEventBefore / relativeEventAfter / relativeEventAbsolute
日付タイプの演算子は、相対イベント発生時刻が前 N 時間以内/相対イベント発生時刻が後 N 時間以内/相対イベント発生時刻が前後 N 時間以内であることをそれぞれ示す。たとえば、ユーザーの前回のログイン時間がイベント発生時刻より 3 時間以内のイベントを選別したい
{
"tableType":"user",
"columnName":"latest_login_time",
"comparator": "relativeEventBefore",
"ftv": [3],
"timeUnit": "hour"
}
- array InCludeItem/array Not InCludeIection
リストに要素が含まれているかどうかを示すリスト型の演算子
- arrayItemPos
リスト型の演算子で、リストの n 番目の要素がある値
- array IsNull/array NotNull
リストが存在するかどうかを示すリスト型の演算子