1
  1. キーとローの両方のフィールドを含まないドキュメントの総数を見つけようとしていました。ただし、常に true を返し、結果はドキュメントの総数です。そのようなドキュメントには両方のフィールドが含まれていません。

  2. これが私が試したコードです:

     db.test.aggregate([
    { "$group": {
             "_id" : { user_id: "$id" },
              "a": { 
                "$sum": {
    
            "$cond": [ {
            $and:[{low:null},{ key:null}]
            } , 1, 0
            ]
         } 
         },
    
       "b": { "$sum": {
                 "$cond": [ { "$ifNull": ["$key", false] }, 1, 0 ]
             } },
             "c": { "$sum": {
                 "$cond": [ { "$ifNull": ["$low", false] }, 1, 0 ]
             } },
           } },
           { "$project": {
             "_id": 0,
             "a": 1,
             "b": 1,
             "c": 1
           } }
            ])
    
4

1 に答える 1