サンプルのnames
を考えてみましょう コレクション:
{ _id: 1, name: "Jack", favoriteColor: "blue" },
{ _id: 2, name: "James", favoriteColor: "red" },
{ _id: 3, name: "John", favoriteColor: "blue" }
findOne
を使用して次の3つのクエリを実行します :
db.names.findOne( { _id: 1 } )
db.names.findOne()
db.names.findOne( { favoriteColor : "blue" } )
結果は3つのクエリで同じです:
{ "_id" : 1, "name" : "Jack", "favoriteColor" : "blue" }
それぞれ、集計を使用した同等のクエリ 次のようになり、同じ結果になります:
db.names.aggregate( [
{ $match: { _id: 1 } },
] )
db.names.aggregate( [
{ $limit: 1 }
] )
db.names.aggregate( [
{ $match: { "favoriteColor" : "blue" } },
{ $limit: 1 }
] )
db.collection.findOne 定義によると-
findOne
を使用 ドキュメントが見つからない場合は、null
を返します 。ただし、集計
カーソルを返し、カーソルメソッドを適用できます。 a> 結果について。