我在使用这个查询时遇到错误 db.a.find({$or:[{"name": "aekansh"},{"age": 21}]}).pretty()
作为 E QUERY [thread1] SyntaxError: invalid property id @(shell):1:11
集合a将数据存储为
{ "_id" : 10, "name" : "aekansh" }
{ "_id" : 11, "name" : "ram" }
{ "_id" : ObjectId("59dda15e153802c1d1cf8500"), "name" : "ramu" }
{ "_id" : 12, "nm" : "raj", "age" : 21 }
{ "_id" : ObjectId("59dda1d26b740896d9f067a3"), "nm" : "rj", "age" : 22, "bfff" : "yes" }
{ "_id" : ObjectId("59dda1ea11fc6ddeb8784f7e"), "nm" : "rj1", "age" : 22, "bfff" : "yes" }
我看过语法,我认为它是对的。为什么我收到错误。提前致谢。
编辑- 我正在为 MongoDb 使用在线终端 https://www.jdoodle.com/online-mongodb-terminal
最佳答案
如前所述,您的查询是正确的。
如果在此在线终端上失败,则表示终端有问题。
事实上你有 3 个我知道的解决方案:
- 在您的本地计算机上安装 MongoDB,并使用 MongoDB Compass 或 MongoShell 查询您的数据库。
- 使用Mongo Web Shell可在 MongoDB 文档站点上访问。
- 最后一个选项是set up free cluster来自 Mongo 网站。他们免费为您提供一些云空间,为您设置数据库,作为第一个选项,您可以使用 MongoDB Compass 或 MongoShell 从本地计算机查询它。
关于database - 错误 E QUERY [thread1] SyntaxError : invalid property id @(shell) using and/or with find(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46681536/