【问题标题】:How to get only documents which have one field not empty如何仅获取一个字段不为空的文档
【发布时间】:2013-01-28 08:38:23
【问题描述】:

我正在尝试创建一个查询以排除在一个特定字段中具有空/空值的所有文档。

查询语法或编程方式是什么?

【问题讨论】:

    标签: zend-framework lucene zend-search-lucene


    【解决方案1】:

    您可以使用需要的范围查询,它在两边都是开放的,例如:

    +field:[* TO *]
    

    假设要排除的文档在索引中没有值,这可能就足够了。

    如果出现某种形式的默认值,您也必须排除该值,例如:

    +field:[* TO *] -field:NULL
    

    【讨论】:

    • 感谢您的提示!但是,使用+field:[* TO *],我得到了ZendSearch\Lucene\Search\Exception\QueryParserException: At least one range query boundary term must be non-empty term。将其更改为 +field:[0 TO *] 就成功了!
    猜你喜欢
    • 1970-01-01
    • 2021-07-20
    • 2022-06-19
    • 1970-01-01
    • 2021-08-30
    • 1970-01-01
    • 1970-01-01
    • 2021-10-21
    • 2016-12-25
    相关资源
    最近更新 更多