如何從 MongoDB 集合中獲取唯一值?
若要獲取唯一值並忽略重複項,請在 MongoDB 中使用 distinct()。distinct() 會找到整個單一集合中特定欄位的唯一值,並以陣列形式返回結果。
讓我們建立一個包含文件的集合 −
> db.demo704.insertOne({"LanguageCode":"hi"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee18551299a9f98c93bd")
}
> db.demo704.insertOne({"LanguageCode":"en"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee1e551299a9f98c93be")
}
> db.demo704.insertOne({"LanguageCode":"hi"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee20551299a9f98c93bf")
}
> db.demo704.insertOne({"LanguageCode":"eo"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee2c551299a9f98c93c0")
}
> db.demo704.insertOne({"LanguageCode":"eu"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee2f551299a9f98c93c1")
}
> db.demo704.insertOne({"LanguageCode":"fo"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee35551299a9f98c93c2")
}
> db.demo704.insertOne({"LanguageCode":"fo"});
{
"acknowledged" : true,
"insertedId" : ObjectId("5ea6ee37551299a9f98c93c3")
}藉助 find() 方法顯示某個集合中的所有文件 −
> db.demo704.find();
這會生成以下輸出 −
{ "_id" : ObjectId("5ea6ee18551299a9f98c93bd"), "LanguageCode" : "hi" }
{ "_id" : ObjectId("5ea6ee1e551299a9f98c93be"), "LanguageCode" : "en" }
{ "_id" : ObjectId("5ea6ee20551299a9f98c93bf"), "LanguageCode" : "hi" }
{ "_id" : ObjectId("5ea6ee2c551299a9f98c93c0"), "LanguageCode" : "eo" }
{ "_id" : ObjectId("5ea6ee2f551299a9f98c93c1"), "LanguageCode" : "eu" }
{ "_id" : ObjectId("5ea6ee35551299a9f98c93c2"), "LanguageCode" : "fo" }
{ "_id" : ObjectId("5ea6ee37551299a9f98c93c3"), "LanguageCode" : "fo" }以下查詢可以獲取唯一值,並在陣列中顯示結果 −
> db.demo704.distinct("LanguageCode");這會生成以下輸出 −
[ "hi", "en", "eo", "eu", "fo" ]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP