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

nullがmongodbで最後に順序付けられていることをどのように分類できますか?

    おそらく、集計と人為的に高い終了日を使用できます:

    c = db.foo.aggregate([
    {$project: {
                next_time: 1,
                nlt: { $ifNull: [ "$next_time", new ISODate("9000-01-01") ] }
      }     
    }
    ,
    {$sort: { "nlt": 1}}
                      ]);
    c.forEach(function(r) { printjson(r); });
    

    または、資料の大部分にnullがあり、それらのドキュメントをまったく処理したくない場合は、それらを除外して、$sortだけにします。 残り:

    db.foo.aggregate([
    {$match: {"nt": {$exists: true}}}
    ,
    {$sort: { "nt": 1}}
                     ]);
    


    1. MongoDBでサーバー側の保存された関数を使用することが推奨されないのはなぜですか?

    2. MongoDB $ second

    3. mongodbで文字列を数値に変換する方法

    4. mongoのサブドキュメントインデックス