在 MongoDB 中,我们在使用 find 查询记录时,如果需要使用或查询,我们可以在 find 的查询条件里面使用 $or
运算符。
db_name.collection_name.find({$or:[{filed1:value1}, {field2:value2}]});
参数 | 描述 |
---|---|
db_name | 数据库名 |
collection_name | 集合名 |
filed1 | 要查询的字段 |
value1 | filed1 的值等于 value1 |
filed2 | 要查询的字段 |
value2 | filed2 的值等于 value2 |
查询 filed1 的值等于 value1 或者 field2 的值等于 value2 的记录。
我们首先,使用 mongo 命令,连接上数据库,具体命令如下:
mongo
如下图所示:
现在,我们使用 use 命令,切换到 haicoder 数据库,具体命令如下:
use haicoder
现在,我们使用 insertMany 插入三条记录,具体命令如下:
db.haicoder.insertMany([{"url":"haicoder.net", "age":101}, {"url":"www.haicoder.net", "age":100}, {"url":"m.haicoder.net", "age":80}])
执行完毕后,此时,如下图所示:
我们看到,此时提示我们成功插入了三条记录,现在,我们使用 find 进行查询,查询 age 等于 100 或者 age 为 101 的记录,具体命令如下:
db.haicoder.find({$or:[{"age":100}, {"age":80}]}, {_id:0})
执行完毕后,此时,如下图所示:
我们看到,此时查到了 age 属性为 100 或者 age 为 80 的记录,同时,我们还可以使用 or 实现或查询不同的字段,具体命令如下:
db.haicoder.find({$or:[{"age":100}, {"url":"haicoder.net"}]}, {_id:0})
执行完毕后,此时,如下图所示:
我们看到,此时同样查到了 age 属性或者 url 属性匹配的记录。
在 MongoDB 中,我们在使用 find 查询记录时,如果需要使用或查询,我们可以在 find 的查询条件里面使用 $or
运算符。