私がかなり簡単なクエリであると思ったのは、私にとっては難しいことでした。グループ集計後にMongoDBが返すフィールド
私は、ユーザー用のイベントデータのコレクションをウェブサイトに持っています。私は各ユーザーのランディングページを見つけようとしています。一意のユーザーはフィールドanonymousId
を持ち、ユーザーの現在のページパスは入れ子フィールドcontext.page.path
にあります。
ユーザーが訪問した最初の日付を見つけることはできますが、同じクエリでその日付と一緒になるcontext.page.path
を抽出する方法がわかりません。私もページ・パス上$first
演算子を使用しますが、私はこれは間違っているかなり確信している...ここで
は、私は、Python(pymongo)にカーソルを作成するために使用しているコードです:
cursor = db.events.aggregate({
'$group':
{
'_id': '$anonymousId',
'date': { '$first': '$timestamp' },
'page': { '$first': '$context.page.path' }
}
})
編集:ここでは
は、このコレクション(編集済み)のための文書構造である...
{
"anonymousId": "...",
"timestamp": "2016-04-05T13:05:06.076Z",
"context": {
"page": {
"path": "...",
"referrer": "...",
"title": "...",
"url": "..."
}
},
... more fields here but not relevant to this question
}
を許して - そしてprofesor79 @問題 – profesor79
を解決するために容易になりますが、感謝を追加しました。 – markdjthomas