如何评估/解释sphinxql查询?

时间:2011-10-04 11:19:35

标签: sphinx

假设我有一个名为“worldcities”的sphinx索引,其中包含以下字段/属性:

country_id #int属性

city#text field

accent_city #text field

我运行以下sphinxql查询:

SELECT * FROM worldcities WHERE country_id = 16 AND MATCH((@(city,accent_city) "New Yor*"))

sphinx如何评估查询?: 它首先搜索所有记录,然后按countr_id过滤结果: “给我所有以'New Yor'开头并按country_id过滤它们的结果”?

或者首先按国家/地区ID过滤,然后搜索结果: “给我所有结果,其中countr_id = 16然后搜索那些”?

希望我能说清楚

1 个答案:

答案 0 :(得分:3)

  

“给我所有以'New Yor'开头并按country_id过滤它们的结果”

这个。

首先运行全文查询。然后过滤器'排除'非必需匹配。

顺便说一下,你的查询缺少一些引号,应该是

MATCH('@(city,accent_city) "New Yor*"')

匹配功能需要一个字符串。