2011-01-22 76 views

回答

15

首先,創建三個FULLTEXT索引:

* one on the title column 
* one on the body column 
* one on both title and body columns 

然後,按以下方式構建查詢:

SELECT field1, field2, field3, title, body, 
MATCH (title) AGAINST ('word_to_search') AS rel_title, 
MATCH (body) AGAINST ('word_to_search') AS rel_body 
FROM table_to_use 
WHERE MATCH (title,body) AGAINST ('word_to_search') 
ORDER BY (rel_title*2)+(rel_body) 

這將給標題比2倍以上的相關性身體。

當您需要允許對內容進行排序(例如,由用戶不查看的標籤)時,這非常方便,因爲它允許您從幕後調整結果。

+2

給你一個大拇指..但我還是不喜歡3個索引......只是不喜歡它... – 2015-07-12 16:18:08