私はこれを直接行うことはできないと思います。あなたができることは、AND条件に一致するプロファイルID、つまり両方のイベントを送信したプロファイルを見つけることです。あなたはこのようなイベントにグループ化する使用して行うことができます。)
function main() {
return Events({
from_date: '2017-11-23',
to_date: '2017-11-24',
event_selectors: [
{ event: "Offer Viewed", selector: 'properties["Offer
Type"] == "Deal"'},
{ event: "Offer Claimed"}
]
})
// Find unique event-name/ID pairs. There will be 1-2 rows for each ID.
.groupBy(["name", "properties.$id"], mixpanel.reducer.any())
.map(e => { return {"event" : e.key[0], "id" : e.key[1]} })
// Find IDs for profiles that sent both events
// (i.e. that are returning 2 items after grouping on ID)
.groupBy(["id"], mixpanel.reducer.count())
.filter(e => { return e.value === 2})
.map(e => { return {"id" : e.key[0]} })
}
をしかし、あなたが人々(と、それに参加しようとしたとき、あなたはJQLのこの制限で立ち往生にバインドされています:
Error validating script: Uncaught exception Error: join(Events(), People()) is the only form of join JQL supports.
return join(
これを回避する方法の1つは、イベントを送信するたびにプロファイルプロパティを設定することです。私たちがたくさん使っているのは、Offer Viewedを送ったときにプロファイルの更新を行い、プロファイルのプロパティをOffer Viewed At=$timestamp
に設定するパターンです。そうすれば、イベントでの作業を省略して、プロファイルのプロパティでフィルタリングするだけで済みます。
あなたの他の選択肢は上記のクエリを使用して、残りのイベントをイベントのレベルで取得することです。