2011-10-04 71 views
1

假設我有一個獅身人面像指數名爲 「worldcities」 與具有以下字段/屬性:如何評估/解釋sphinxql查詢?

COUNTRY_ID#INT屬性

城市#文本字段

accent_city#文本字段

和我運行以下sphinxql查詢:

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

斯芬克斯如何評估s查詢嗎?: 它首先搜索所有記錄,然後通過countr_id篩選結果: 「給我所有以'New Yor'開始並按country_id過濾它們的結果?

還是先過濾國家ID並搜索結果: 「給我所有有countr_id = 16的結果然後搜索那些」?

希望我自己清楚

回答

3

「給我所有以‘新約書’,並通過COUNTRY_ID過濾他們開始結果」

這一個。

全文查詢首先運行。然後過濾器「排除」不需要的匹配。

順便說一句,您的查詢缺少一些報價,應該是

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

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

+0

是的,我終於明白了。這不是一個生產查詢,只是一個例子。感謝你的回答。 –