Sphinx 对具有不同属性的多个索引进行搜索
是否可以在具有不同属性的多个索引上进行搜索并保持一致的PAGIN。
例如,我们有 2 个索引:
- 具有 GEO 数据的地点
- 没有 GEO 数据的对象
我们希望对索引 #1 应用 GEO 过滤器(SetFilterFloatRange、SetGeoAnchor),并对索引 #2 跳过此过滤器。我们希望通过一页分页在一个结果集中显示这些结果。
SPHINX 可以吗?
Is it possible to search on multiple indexes with different attributes and keep consistent PAGIN.
For example we have 2 indexes:
- Places with GEO data
- Objects without GEO data
And we want to to apply GEO filters for index #1(SetFilterFloatRange, SetGeoAnchor) and SKIP this filter for index #2. We want to show these results in one result set with one paging.
Is it possible with SPHINX?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,目前这是不可能的 - 如果您尝试这样做,您将收到错误。
解决方法是在索引 #2 中具有相同的字段,但具有某个值,这表明应跳过此检查。
您的搜索查询可能如下所示:
(@somefield ("%s") | @somefield ("NONE"))
,其中NONE
是您的“空值”,%s
是您实际要查找的字符串。No, this is not currently possible - you will receive an error if you try to do so.
The workaround for this would be to have the same field inside the index #2, but with some value, which indicates that this check should be skipped.
Your search query might look like this:
(@somefield ("%s") | @somefield ("NONE"))
, whereNONE
is your "empty value" and%s
is the string you are actually looking for.