10

シナリオ: というコレクションがMyCollectionあり、次のデータがあるとします。

{
    "_id" : 'MyUniqueID_01'
    "CreatedTime" : "2013-12-01T14:35:00Z",
    "LastModifiedTime" : "2013-12-01T13:25:00Z"
}

ここで、上記の種類のデータが膨大な数のドキュメントにある MongoDB データベースにクエリを実行したいと考えています。そして、私のクエリは日付範囲に基づいています。つまり$gt、 、$gte$lt&を使用しています$lte

したがって、私のクエリは次のようになります。

db.MyCollection.find({ 'CreatedTime': {$gt: '2013-05-25T09:29:40.572Z'}})

上記の例を考慮すると、予想される結果は、クエリでドキュメントを取得する必要があることです ("CreatedTime" : "2013-12-01T14:35:00Z" がクエリで渡された値 '2013-05-25T09:29:40.572 より大きいため) Z'); そうではありませんが、問題はフィールドCreatedTimeが文字列形式であることです。

質問: 文字列フィールド タイプを日付に変更せずに、期待どおりの結果を完全に得る方法はありますか?

4

1 に答える 1