546b79a2e4b0f7bfbaa97cc7

546b79a2e4b0f7bfbaa97cc7

数据如下:

{
    "_id" : { "$oid" : "546b79a2e4b0f7bfbaa97cc7" },
    "title" : "Eyewitness: Highlands, Scotland",
    "description" : "Photographs from the Guardian Eyewitness series",
    "timeStamp" : "14/11/2014",
    "category" : "news",
    "url" : "http://www.theguardian.com/world/picture/2014/nov/14/1",
    "source" : "http://www.theguardian.com/",
    "mainStory" : "\n",
    "keywords" : [ "Wildlife", "Scotland" ]
}

但是当我使用以下命令查找内容时,就会出现错误
db.guardian.find({ "_id": {"$oid": '546b79a2e4b0f7bfbaa97cc7'}})

如何查找具有特定$oid的文档。

最佳答案

您需要像这样将id字符串转换为ObjectId:

db.guardian.find({ "_id": ObjectId("546b79a2e4b0f7bfbaa97cc7") })

原因是{ "$oid" : "546b79a2e4b0f7bfbaa97cc7"}ObjectId("546b79a2e4b0f7bfbaa97cc7")相同,只是格式不同。

有关更多详细信息,请引用 docs

关于MongoDB:无法规范化查询:BadValue未知运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30646068/

10-12 14:22