【问题标题】:mongodb - filter collection by string array contains ""mongodb - 按字符串数组过滤集合包含“”
【发布时间】:2021-01-23 17:58:36
【问题描述】:

对于下面的文档,我想写mongodb查询来得到结果。

[{
        "id": "1",
        "class": "class1",
        "value": "xyz"
    }, {
        "id": "2",
        "class": "class2",
        "value": "abc"
    }, {
        "id": "3",
        "class": "class3",
        "value": "123"
    }, {
        "id": "4",
        "class": "class4"
    }, {
        "id": "5",
        "class": "class5",
        "value": ""
    }
]

搜索参数是一个值数组 - ["abc", "xyz", ""],这是 去看看属性“值” 输出应该在下面,在这种情况下,搜索数组 "" 中的第三项指向具有 "id" - 4 和 5 的集合:

[{
        "id": "1",
        "class": "class1",
        "value": "xyz"
    }, {
        "id": "2",
        "class": "class2",
        "value": "abc"
    }, {
        "id": "4",
        "class": "class4"
    }, {
        "id": "5",
        "class": "class5",
        "value": ""
    }
]

请协助提供mongodb查询得到这样的结果

【问题讨论】:

    标签: mongodb mongodb-query


    【解决方案1】:

    只要你有空字符串,你就可以在数组中添加null,像这样,

    db.collection.find({
      value: {
        $in: ["abc", "xyz", "", null]
      }
    })
    

    【讨论】:

      猜你喜欢
      • 2021-02-19
      • 1970-01-01
      • 1970-01-01
      • 2018-11-20
      • 2011-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-27
      相关资源
      最近更新 更多