【发布时间】:2021-07-18 23:50:22
【问题描述】:
我有一个name、age 和country 的用户列表。
现在我想用以下查询来查询这个用户列表。
- 仅按名称搜索。
- 同时按名称和国家/地区搜索
我之前尝试过的东西,但没有得到想要的结果。
users.find({
$and: [
{ name: name },
{ country: country },
],
})
当我仅使用name 进行搜索时,我没有得到任何结果,因为country 在我的查询中为空。
当我在查询中同时传递name 和country 时,它工作正常。
如果在表达式中传递,我需要了解如何使用空值进行查询。
【问题讨论】:
-
为什么不用
$or而不是$and -
我确实使用了 $or,在这种情况下,它会查找带有名称(或)的所有记录以及国家/地区。我想搜索名称(和)国家
标签: javascript mongodb mongoose