2011-10-30 11 views
3

私は比較的新しいMongoDBを使い始めており、より高度なアップサートに問題があります。私はグーグルとドキュメントを読んでいるが、私が探しているものを正確に知るのに困っている。基本的には、複数のドメインのデータを格納するヒットカウンタを作成しています。

マイドキュメント構造は次のとおりです。

{ 
    "domain": "example.com", 
    "hitCount": 1, 
    "urls": [ 
     { 
      "url": "/the-url", 
      "hitCount": 1, 
      "hits": [ 
       { 
        "date": "2011-10-30T04:50:01.090Z", 
        "IP": "123.123.123.123" 
       } 
      ] 
     } 
    ] 
} 

マイアップサートコードは、これまでのところです:

{ 
    $set: {"domain": "example.com"}, 
    $inc: {"hitCount": 1}, 
    $addToSet: {"urls": {"url": "/the-url"} } 
} 

このビットは、偉大な作業ができますが、アップサートのその最初の部分のみを見ることができるように。私は、 "ヒットカウント"をインクリメントし、ヒットの "日付"と "IP"を追加するなどの "URL"内の残りのデータを挿入するのに問題があります。

私はこの文書構造が1つのアップサイトで可能かどうか疑問に思っていましたか?私はこれを達成するために複数のクエリを実行する必要があると思っています。

答えて

4

複数のクエリを実行する必要があります。

関連する問題