sql >> データベース >  >> NoSQL >> MongoDB

Mongo DB:最後の既知のドキュメントの後に挿入されたすべてのドキュメントを取得します

    ObjectId以降 デフォルトでは、incが含まれています およびtimestamp http://www.mongodb.org/display/DOCS/ Object + IDs#ObjectIDs-BSONObjectIDSpecification )実際にObjectIdを使用できます 挿入時間を(大まかに)理解するには:

    db.col.find({_id: {$gt: {ObjectId("50911c4709913b2c643f1216")}}});
    

    ただし、ObjectId 特にアプリでObjectIdを作成する場合は、常に非常に信頼できるとは限りません。 挿入の少し前に、後で作成されたことがわかっている1つのレコードが実際に表示されます(_idのため) )前と同じように。

    ObjectIdを信頼できない特定のシナリオでの挿入の場合 挿入タイマーの場合、tsを追加できます BSON日付タイプのフィールド(ISODate )そして、2つのクエリを使用してその範囲を指定します。1つは元のドキュメントの時間を取得し、もう1つは後にすべてのドキュメントを取得します。

    個人的には、信頼性と柔軟性が高いため、BSON日付型を使用する2番目の方法を選択することを好みます。



    1. BSON文字列(Cstring / enameではない)の後に続く0x00バイトがなぜですか?

    2. 同期を使用したAndroidおよびMongoDB上のSQLite

    3. セロリはピアによって接続をリセットします

    4. MongoDBでのマルチドキュメントACIDトランザクションの概要とその使用方法