包含と除外を混在させることはできません。のみ 例外は_id
です フィールド。
たとえば、これがある場合:
{
"_id": ObjectId("53d1fd30bdcf7d52c0d217de"),
"name": "bill",
"birthdate": ISODate("2014-07-80T00:00:00.000Z"),
"created": ISODate("2014-07-25T06:44:38.641Z")
}
「名前」と「生年月日」だけが必要な場合は、次のようにする必要があります。
db.collection.find({},{ "_id": 0, "name": 1, "birthdate": 1 })
またはこれ:
db.collection.find({},{ "_id": 0, "created": 0 })
ただし、「_id」以外の操作を「混合」することは許可されていません
db.collection.find({},{ "_id": 0, "name": 1, "created": 0 })
それもエラーになります。
これはすべてマニュアルページで説明されています。