我正在尝试使用NodeJs从MongoDb提取Distinct
数据。我正在以JSONArray形式获取数据,因为我没有从MongoDb获得密钥。
下面是我的代码:
const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){
res.send({"product_name":docs});
}));
以下是我的输出
{
"product_name": [
"Biology",
"Chemistry",
"Crown",
"Crown Junior",
"Long Book",
"Long Book A4",
"Physics",
"Sketch Book",
"Universal"
]
}
当我尝试下面的代码时,我没有任何价值。
const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){
let output = docs.map(r => ({'product_name':docs.product_name}));
res.send(output);
}));
输出值
[
{},
{},
{},
{},
{},
{},
{},
{},
{}
]
我想要键值对中的值,如下所示:
[
{
"product_name":Book
},
{
"product_name":Pencil
}
]
有人请让我知道如何获得期望的结果,将不胜感激。
谢谢
最佳答案
只需很小的更改,它就可以开始工作:
const coll = client.db("mydb").collection("ItemsAddedByAdmin");
coll.distinct("product_name",(function(err,docs){
let output = docs.map(r => ({'product_name':r})); // r contains the item of array at respective index
res.send(output);
}));
关于javascript - 如何使用NodeJS从MongoDb以JSONObject形式获取结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59967103/