我试图弄清楚如何进行嵌套或/和where查询,就像在MySQL中一样

比如说

SELECT
    first_name,
    id
FROM
    table
WHERE
   (
       province = "nb" OR
       province = "on"
   ) AND (
       city = "toronto" AND
       first_name = "steven"
   )

推荐答案

MongoDB中的查询如下所示:

Database.collection_name.find(
    // This is the condition
    {
        $and: [
           {
               $or: [
                   {province: 'nb'},
                   {province: 'on'}
               ]
           },
           {
               city: "toronto"
           },
           {
               first_name: "steven"
           }
        ]
    },

    // Specify the fields that you need
    {
        first_name: 1,
        _id: 1
    }
)

$and $or的文件

MongoDB的一些示例和官方文档可以找到here.

Mongodb相关问答推荐

如何限制/筛选子文档中的条目?

多键索引,性能问题

没有mongoose 的 Express 和 MongoDB

MongoDB:使用数组过滤器进行更新插入

SELECT 字段 AS `anothername` 的 mongodb 等效项

我怎样才能排序空值在 mongodb 中是最后排序的?

GeoJSON 和 MongoDB:将点存储为 GeoJSON.Point 是否值得?

用 Redis 查询?

从命令行创建 MongoDB 用户

Springboot 使用 find*() 查询时出现 Mongodb 错误

使用 MongoDB 更新数组字段内的特定键/值

Node + Mongoose:获取最后插入的 ID?

MongoDB 查找精确的数组匹配,但顺序无关紧要

MongoDB - 聚合 - 获取数组中的唯一项

MongoDB:如何在 100 个集合中找到 10 个随机文档?

Java Mongodb 正则表达式查询

Mongodb 设计,嵌入与关系

如何使用 mgo 从 golang 中的 mongodb 集合中 Select 所有记录

带有索引字段的 MongoDB 正则表达式

Mongo 条件为key doesn't exist?