2012-05-06 50 views
0

我從全文mysql dbTable中選擇文本,按照相關度乘以客戶端提供的權重返回匹配。查詢工作正常,但我想作爲一個 「AS評分」條款的查詢返回到客戶端(通過PHP)的實際加權相關性分數。我試過在任何地方插入AS子句,但沒有成功。 建議? 謝謝使用「AS分數」從mysql全文搜索返回相關性分數

$sql1="SELECT * FROM $dbTable 
WHERE MATCH (data) AGAINST ('".$key_word_1."') 
    OR MATCH (data) AGAINST('".$key_word_2."') 
ORDER BY (MATCH (data) AGAINST('".$key_word_1."') * $weight_1) + (MATCH (data) AGAINST('".$key_word_2."') * $weight_2) DESC 
LIMIT 200"; 

回答

1

,你可以這樣做:

SELECT * , (MATCH (data) AGAINST('".$key_word_1."') * $weight_1) + (MATCH (data) AGAINST('".$key_word_2."') * $weight_2) AS score 
.... 
ORDER BY score DESC 
+0

漂亮!非常感謝你 – mcb