Mongodb 如何使用mongo聚合框架将$oid哈希值作为字符串获取?
我有一个包含json输出的对象的集合,如下所示:Mongodb 如何使用mongo聚合框架将$oid哈希值作为字符串获取?,mongodb,mongoid,Mongodb,Mongoid,我有一个包含json输出的对象的集合,如下所示: { "_id": { "$oid": "53107ed2e6fb449fa641b903" }, "title": "myBook" } 但我想得到这个: { "_id": "53107ed2e6fb449fa641b903", "title": "myBook" } 我尝试了点符号和$project,但不起作用: db.books.aggregate({ $project: { _id: "$_id.
{
"_id": {
"$oid": "53107ed2e6fb449fa641b903"
},
"title": "myBook"
}
但我想得到这个:
{
"_id": "53107ed2e6fb449fa641b903",
"title": "myBook"
}
我尝试了点符号和$project,但不起作用:
db.books.aggregate({
$project: {
_id: "$_id.oid",
title: 1
}
)
看起来您的聚合查询语法不正确。试试这个:
db.books.aggregate([{$project:{_id:"$_id.oid", title:1}}])
此外,在输入json中,oid有一个“$”前缀(即“$oid”)。这在MongoDB中是非法的。您想要的id可能是字符串而不是ObjectID的重复。我说得对吗?我想这是他问题的全部要点。如何使用$oid执行此操作。