【问题标题】:Query to see if there are any documents that match查询是否有匹配的文档
【发布时间】:2013-07-03 14:36:54
【问题描述】:

有没有办法查询 Solr 并找出是否有任何符合条件的文档?

我不需要或不想要这些文件,如果我能做类似的事情会很理想

(有一个匹配 AND ... 的文档)作为我的查询字符串

我问,因为我正在使用某个实体作为管理权限的一种方式,这似乎可行。目前,我的解决方法是有两个查询,一个询问是否有符合条件的文档,检查是否至少有一个文档返回,然后发送第二个。

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: performance solr permissions solr4


    【解决方案1】:

    试试

    /select?q=YOUR_QUERY&rows=0
    

    这将返回如下内容:

    {
    -responseHeader: {
        status: 0
        QTime: 0
        -params: {
           ...
        }
     }
    -response: {
        numFound: 383250
        start: 0
        docs: [ ]
     }
    }
    

    然后检查response.numFound 是否为正。与此等效的 SQL 将是

    SELECT COUNT(*) FROM <table> WHERE <condition>;
    

    【讨论】:

    • 这仍然在搜索不止一个。我希望它在找到第一个后停止(数据很多,完整搜索可能需要几百毫秒以上)
    • numFound 总是返回。我不知道有什么方法可以在 Solr 中做你想做的事。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 2019-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多