Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search 在solr中过滤结果_Search_Solr - Fatal编程技术网

Search 在solr中过滤结果

Search 在solr中过滤结果,search,solr,Search,Solr,我正在尝试使用Solr构建自动建议功能。该索引包含城市中的不同位置,看起来像 id: unique id name: the complete name type: can be one of 'location_zone', 'location_subzone', 'location_city', 'outlet', 'landmark' ... city: city id 现在,当用户键入某些内容时,我希望它只返回来自当前城市的建议,并键入location.*。类似于SQL中的其中city

我正在尝试使用Solr构建自动建议功能。该索引包含城市中的不同位置,看起来像

id: unique id
name: the complete name
type: can be one of 'location_zone', 'location_subzone', 'location_city', 'outlet', 'landmark' ...
city: city id
现在,当用户键入某些内容时,我希望它只返回来自当前城市的建议,并键入location.*。类似于SQL中的
其中city\u id=1和type=“location”

我想其中一种方法就是刻面,但这是正确的方法吗?它仍然会搜索所有文档,然后过滤结果,还是会像mysql那样先应用条件


PS:我是solr的新手,如果您能指出方法中的任何错误,我将不胜感激。

solr确实提供了过滤,使用。您要寻找的应该是以下内容:

&fq=city_id:1&fq=type:location_*&q=...
很好地说明了如何以及何时在Solr中使用筛选器查询。

试试这个