0

フルテキストの mysql dbTable からテキストを選択しています。ヒットは、関連性にクライアントが指定した重みを掛けた順序で返されます。クエリは正常に機能しますが、実際の重み付けされた関連性スコアを (php 経由で) クライアントに返すクエリの "AS スコア" 句として使用したいと考えています。AS句をどこにでも挿入しようとしましたが、成功しませんでした。提案?ありがとうございました

$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";
4

1 に答える 1

1

あなたはこれを行うことができます:

SELECT * , (MATCH (data) AGAINST('".$key_word_1."') * $weight_1) + (MATCH (data) AGAINST('".$key_word_2."') * $weight_2) AS score
....
ORDER BY score DESC
于 2012-05-06T18:59:40.713 に答える