匹配特定欄位值的 MongoDB 查詢(聚合框架)
若要匹配特定的欄位值,請在 MongoDB 聚合中使用 $match。我們來建立一個包含文件的集合 -
> db.demo555.insertOne({"CountryName":"US"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8f21bf54b4472ed3e8e85f") } > db.demo555.insertOne({"CountryName":"UK"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8f21c254b4472ed3e8e860") } > db.demo555.insertOne({"CountryName":"US"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8f21c354b4472ed3e8e861") } > db.demo555.insertOne({"CountryName":"AUS"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8f21c554b4472ed3e8e862") } > db.demo555.insertOne({"CountryName":"US"});{ "acknowledged" : true, "insertedId" : ObjectId("5e8f21c754b4472ed3e8e863") }
透過 find() 方法顯示集合中的所有文件 -
> db.demo555.find();
這會產生以下輸出:-
{ "_id" : ObjectId("5e8f21bf54b4472ed3e8e85f"), "CountryName" : "US" } { "_id" : ObjectId("5e8f21c254b4472ed3e8e860"), "CountryName" : "UK" } { "_id" : ObjectId("5e8f21c354b4472ed3e8e861"), "CountryName" : "US" } { "_id" : ObjectId("5e8f21c554b4472ed3e8e862"), "CountryName" : "AUS" } { "_id" : ObjectId("5e8f21c754b4472ed3e8e863"), "CountryName" : "US" }
以下是匹配特定欄位值的查詢 -
> db.demo555.aggregate([ ... {$match: {CountryName: 'US'}}, ... {$group: {_id: null, Total: {$sum: 1}}} ... ])
這會產生以下輸出 -
{ "_id" : null, "Total" : 3 }
廣告