【问题标题】:querieng document which doesn't have a given field or is empty string in Solr在 Solr 中查询没有给定字段或为空字符串的文档
【发布时间】:2016-08-17 23:13:46
【问题描述】:

我正在使用 solr 进行查询,我需要查找没有给定字段的文档,例如“名称”,我正在尝试以下部分;

$q=+status:active -name:["" TO *]'

但它会发送包含和不包含该字段的所有文档。

谁能帮我解决这个问题? 字段名称是一个普通的 String 类型并被索引。 我正在使用nodejs。谁能帮我解决这个问题

【问题讨论】:

    标签: node.js solr


    【解决方案1】:

    根据docs

    -field:[* TO *] 查找所有没有字段值的文档

    更新

    我试过了,但它甚至会发送字段非空的那些

    然后我的疯狂问题是您使用搜索查询q 而不是使用过滤查询fq。由于您在查询中使用了多个语句,我假设 q 会为您获取最相关的文档,这可能会导致返回一些不需要的结果。 如果你想获得严格的结果集,你应该使用过滤查询fq,而不是see docs

    【讨论】:

    • 我试过了,但它甚至会发送字段非空的那些
    • @SumanLama,可能是使用q 而不是fq 引起的。查看我的更新以回答
    猜你喜欢
    • 1970-01-01
    • 2016-06-08
    • 2011-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-02
    • 1970-01-01
    • 2011-09-02
    相关资源
    最近更新 更多