MongoDB聚合中的第三个条件不起作用

时间:2018-02-20 08:49:38

标签: javascript mongodb

问题

我有一个$project管道,其$filter有一个$cond。当我有多个比较运算符时,它会停止工作。

这是有效的

只有一个比较运算符。

[
   {
      "$and":[
         {
            "$setIsSubset":[
               [
                  "$row.identifier"
               ],
               [
                  "tzi"
               ]
            ]
         },
         {
            "$not":{
               "$gt":[
                  "$row.value",
                  "1"
               ]
            }
         }
      ]
   }
]

这不再适用

现在有两个比较运算符。

[
   {
      "$and":[
         {
            "$setIsSubset":[
               [
                  "$row.identifier"
               ],
               [
                  "tzi"
               ]
            ]
         },
         {
            "$not":{
               "$gt":[
                  "$row.value",
                  "1"
               ]
            }
         },
         {
            "$not":{
               "$lt":[
                  "$row.value",
                  "10"
               ]
            }
         }
      ]
   }
]

如果需要,我可以提供整个查询(很长)。

1 个答案:

答案 0 :(得分:2)

你在说

(不大于1)AND(不小于10)

与说

相同

(小于或等于1)AND(大于或等于10)

没有数字符合这个条件。