mongodb:为一个字段选择两个值

时间:2013-12-21 01:51:30

标签: mongodb haskell

更新以下使用$all的查询有效。我已相应更新了这个问题。

我试过这个选择器:

[ pack "tags" =: [ pack "$all" =: [pack "city", pack "urban"]]]

我也可以使用"$xxx"之类的运算符来处理其他查询,如下所示:

[pack "dueBy" =: [pack "$gt" =: beginningOfTime, pack "$lte" =: readDate stringDate]]

我有一个名为"tags"的字段,其字段设置为一个标记列表。例如,

["tags" := ["city", "urban", "Rochester"]]

当我构建一个基于两个标签从数据库中检索文档的选择器时,我使用一个如下所示的选择器:

 [ pack "tags" =: [ pack "$all" =: [pack "city", pack "urban"]]]

然而,当我尝试根据两个标签进行选择时,我没有得到任何结果。根据许多标签中的一个标签进行选择可以得到正确数量的结果。此外,选择一个标签和优先级(另一个字段)可以得到正确的结果数。

1 个答案:

答案 0 :(得分:2)

抱歉,我不知道Haskell,但在JavaScript中,这将是:

db.Note.find({tags: {$all: ['school', '229']} });

使用$all,您可以选择数组包含所有值的文档。