【问题标题】:Using "AS score" to return relevance score from mysql fulltext search使用“AS 分数”从 mysql 全文搜索返回相关分数
【发布时间】:2012-05-15 10:34:40
【问题描述】:

我从全文 mysql dbTable 中选择文本,返回的命中按相关性乘以客户端提供的权重排序。查询工作正常,但我想作为 查询的“AS 分数”子句将实际加权相关分数返回给客户端(通过 php)。我尝试在任何地方插入 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";

【问题讨论】:

    标签: php mysql full-text-search relevance


    【解决方案1】:

    你可以这样做:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-18
      • 2020-05-21
      • 2012-07-10
      • 2011-11-05
      • 1970-01-01
      • 1970-01-01
      • 2012-10-17
      相关资源
      最近更新 更多