2010-06-29 56 views
0

人們通常會有此查詢他們的sphinx.conf文件:將所有文本字段組合到一個可搜索字段中?

sql_query = SELECT id,text_field1,text_field2,text_field3 FROM table_name 

會不會有太大的差別,如果我將所有的字段到一個可搜索的文本字段像這樣?

sql_query = SELECT id, CONCAT(text_field1,text_field2,text_field3) as searchable_text FROM table_name 

對人有什麼好處?

謝謝!

回答

2

我認爲無論哪種方式一般都很好......但是,獅身人面像有能力將焦點集中在某些領域(請參閱the extended query syntax examples)。如果您將所有列合併到一個字段中,則會失去該能力。

您也將失去將某些字段加權到其他字段的能力。

0

CONCAT(text_field1,text_field2,text_field3)是錯誤的 使用CONCAT(text_field1, ' 'text_field2,'',text_field3)

但最好讓索引不同的領域

搜索返回相同的結果但您可以根據需要選擇其中一個列表

'@ text_field2 foo'

相關問題