目前我有这样的查询
q=mysearchparameters
它工作正常,我认为它将在所有字段中搜索此关键字,现在我想仅根据某些特定字段检索数据
q=name:'somename'+specialization:'somespecialization'
是否可以查询,这里我得到了第二个查询的一些意外数据。
答案 0 :(得分:2)
为了执行多准则请求,您最好这样做:
q=*:*
fq= name:*somename*
fq= specialization:*specializstr*
http req example : http://localhost:8983/solr/datav6/select?q=*%3A*&fq=data%3A*carlos*%5E5&fq=entity%3Aemployee&wt=json&indent=true
它对结果更加安慰,执行速度更快,消耗更少的内存。 请享受并给我一些反馈! :)
答案 1 :(得分:2)
您可以将多个查询一起进行AND运算,如下所示:
q=name:somename AND specialization:somespecialization
或ORer一起这样:
q=name:somename OR specialization:somespecialization
或者您可以使用过滤器查询将它们组合在一起:
q=*:*&fq=name:somename&fq=specialization:somespecialization
我不会进入查询与过滤查询,因为它在其他地方更好地被覆盖: