Node.js查询$ in和null值时出现问题

时间:2019-01-31 19:13:06

标签: node.js mongodb

在本机mongodb请求中,我们可以像这样检查字段是否存在: 以docs为例:

[{name:"test1",profil:"profilA"};{name:"test2"};{name:"test3",profil:"profilB"}]

如果我们要检查所有与“ profilA”匹配的文档,并且当不存在profil时,我们可以执行以下操作:

db.getCollection('col').find({"profil":{"$in":[null,"profilA"]}})

在mongodDb本机外壳中,结果是完美的:

[{name:"test1",profil:"profilA"},{name:"test2"}]

实际上,空值匹配所有没有“配置文件”字段的文档。

在具有mongodb驱动程序的nodejs中,结果不一样:

[{name:"test1",profil:"profilA"}]

空值不匹配,所以...

这是nodejs驱动程序的错误吗?

非常感谢您的帮助...

JP

1 个答案:

答案 0 :(得分:0)

很抱歉这个问题,实际上一切正常。这是由于另一个人为错误...