3

エポックタイムスタンプに対してクエリを実行して、mongo (pymongo を使用) から選択しようとしています。私のデータベースのサンプルは次のとおりです(簡潔にするために削除されています):

{
    "_id": "",
    "tweet": {
        "iso_language_code": "en",
        "to_user_name": null,
        "timestamp": 1355325948,
        "created_at": "Wed, 12 Dec 2012 15:25:48 +0000"
    }
}

コード内および python コンソール内のクエリ:

<console>
db.tweets.find({
    "tweet.timestamp":{'$gte':1355391000},
    "tweet.timestamp":{'$lte':1355414400}
})

<code>
cursor = db.tweets.find({"tweet.timestamp":{'$gte':startEpoch},
                         "tweet.timestamp":{'$lte':endEpoch}})

それぞれ、2012 年 12 月 13 日木曜日09:30:00 GMTと2012年 12 月 13 日木曜日 16:00:00 GMTです。

これは、この intこれの他の intを含むすべてのツイートを取得してください、と言っているはずです。ただし、すべてを返します-値をまったく制限していないようです。

たとえば、次のエントリが返され、タイムスタンプは1355325948です。これは、2012 年 12 月 12 日水曜日 15:25:48 GMT です。

また、params のリストを使用した find(...) は暗黙の AND であるという私の理解です。

ティアそう!

4

1 に答える 1

12

同じ名前のクエリ オブジェクトに 2 つのキーを含めることはできません。次のように、それらを単一の値に結合する必要があります。

cursor = db.tweets.find({"tweet.timestamp":{'$gte':startEpoch, '$lte':endEpoch}})
于 2012-12-17T03:52:09.173 に答える