Solr子查询合并问题
Solr subquery merging issue
我在以下情况下使用 SOLR 进行搜索时遇到问题,
我想获得我最喜欢的标签、类别和用户中的所有产品。我希望我最喜欢的用户创建的所有产品都没有任何过滤器,但是来自最喜欢的标签或类别的产品必须在选定的位置进行过滤。我试过如下,
http://www.example.com:8983/solr/collection1/select?rows=10&start=0&wt=json&indent=true&sort=event_start_date asc&q=status:1 AND event_start_date:[2015-04-23T21:38:00Z TO *] AND ( tags:5539d77455061a650f96c67e OR category1_id:53d16fb28066a12606bbb5f2 OR category2_id:53d16fb28066a12606bbb5f2&fq={!geofilt d=40.2335}&pt=9.9312328,76.26730409999999&sfield=latlng) OR ( user_id:5465da1dc54d3c2a15000000 )
但是它不起作用。有没有人帮我找出我的查询有什么问题?
首先,您的查询子句(检查括号)中有一个 fq
(过滤查询子句),这是错误的。
fq={!geofilt d=40.2335}&pt=9.9312328,76.26730409999999&sfield=latlng
您可以尝试将 geofilt 过滤器查询放在带有测试的主查询之外,以便在...
时跳过它
http://www.example.com:8983/solr/collection1/select?rows=10&start=0&wt=json&indent=true&sort=event_start_date asc&q=status:1 AND
event_start_date:[2015-04-23T21:38:00Z TO *] AND
(tags:5539d77455061a650f96c67e OR
category1_id:53d16fb28066a12606bbb5f2 OR
category2_id:53d16fb28066a12606bbb5f2) OR
(user_id:5465da1dc54d3c2a15000000)
&fq=user_id:5465da1dc54d3c2a15000000 OR
{!geofilt pt=9.9312328,76.26730409999999 sfield=latlng d=40.2335}
如果 user_id 是 5465da1dc54d3c2a15000000
那么过滤器查询已经为真所以 location 部分被跳过.
我在以下情况下使用 SOLR 进行搜索时遇到问题,
我想获得我最喜欢的标签、类别和用户中的所有产品。我希望我最喜欢的用户创建的所有产品都没有任何过滤器,但是来自最喜欢的标签或类别的产品必须在选定的位置进行过滤。我试过如下,
http://www.example.com:8983/solr/collection1/select?rows=10&start=0&wt=json&indent=true&sort=event_start_date asc&q=status:1 AND event_start_date:[2015-04-23T21:38:00Z TO *] AND ( tags:5539d77455061a650f96c67e OR category1_id:53d16fb28066a12606bbb5f2 OR category2_id:53d16fb28066a12606bbb5f2&fq={!geofilt d=40.2335}&pt=9.9312328,76.26730409999999&sfield=latlng) OR ( user_id:5465da1dc54d3c2a15000000 )
但是它不起作用。有没有人帮我找出我的查询有什么问题?
首先,您的查询子句(检查括号)中有一个 fq
(过滤查询子句),这是错误的。
fq={!geofilt d=40.2335}&pt=9.9312328,76.26730409999999&sfield=latlng
您可以尝试将 geofilt 过滤器查询放在带有测试的主查询之外,以便在...
时跳过它http://www.example.com:8983/solr/collection1/select?rows=10&start=0&wt=json&indent=true&sort=event_start_date asc&q=status:1 AND
event_start_date:[2015-04-23T21:38:00Z TO *] AND
(tags:5539d77455061a650f96c67e OR
category1_id:53d16fb28066a12606bbb5f2 OR
category2_id:53d16fb28066a12606bbb5f2) OR
(user_id:5465da1dc54d3c2a15000000)
&fq=user_id:5465da1dc54d3c2a15000000 OR
{!geofilt pt=9.9312328,76.26730409999999 sfield=latlng d=40.2335}
如果 user_id 是 5465da1dc54d3c2a15000000
那么过滤器查询已经为真所以 location 部分被跳过.