1

我正在使用 SolrJ 构造一个查询,并且我正在将键值对中的字符串传递给查询,但作为响应,我默认获取带有 AND 操作的文档。那么如何在 solrj 中使用“AND”、“OR”运算符呢?

这是我的代码:

    SolrQuery query = new SolrQuery();
    query.set("indent", true);
    query.setParam("fl", "receiptItemRecordId_l");
    query.setQuery("dateOfBirth=1991-9-21,product=dolo ");
    query.setRows(1000);

所以构造的查询如下:

indent=true&fl=receiptItemRecordId_l&rows=1000&q=dateOfBirth%3D%221991-09-21T00%3A00%3A00Z%22+%2C+Product_s%3Ddolo

日期被格式化为 solrDate 格式。

使用 Solrj 设置“AND”“OR”运算符的任何解决方案?

谢谢

4

1 回答 1

0

您可以尝试以下方法并告诉我这是否适合您

query.setQuery("(field1:value1 AND field2:value) OR field3:value3")

IE

query.setQuery("(product:solo AND product:solo2) OR product:solo3")
于 2016-07-13T09:30:46.777 回答