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

mongodbの最後のNレコードを取得するにはどうすればよいですか?

    あなたの質問を理解したら、昇順で並べ替える必要があります。

    「x」と呼ばれるIDまたは日付フィールドがあると仮定すると...

    .sort()

    db.foo.find().sort({x:1});
    

    1 昇順(古いものから新しいものへ)および -1で並べ替えます 降順で並べ替えます(新しいものから古いものへ)

    自動作成された_idを使用する場合 フィールドには日付が埋め込まれているので、それを使用して注文できます...

    db.foo.find().sort({_id:1});
    

    これにより、古いものから新しいものへと並べ替えられたすべてのドキュメントが返されます。

    自然な順序

    上記のナチュラルオーダーを使用することもできます...

    db.foo.find().sort({$natural:1});
    

    繰り返しますが、 1を使用します または-1 希望する順序に応じて。

    .limit()を使用

    最後に、この種のワイドオープンクエリを実行するときに制限を追加して、どちらかを実行できるようにすることをお勧めします...

    db.foo.find().sort({_id:1}).limit(50);
    

    または

    db.foo.find().sort({$natural:1}).limit(50);
    


    1. 依存関係を解決しようとしています:.NET標準ライブラリをNETCoreに変更する-Microsoft.Extensions.Primitives

    2. Hadoopの制限、Hadoopの欠点を解決する方法

    3. MongoDBの耐久性と書き込みの安全性を理解する

    4. MVC.netのMongoDBからObjectIdを渡す方法