2

我正在使用多个关键字在 mysqlMATCH()中执行搜索。AGAINST()如何知道与搜索匹配的关键字。

SELECT ... , MATCH(n.s_body_from_rss, n.s_full_body) AGAINST("LIST OF KEYWORDS' IN BOOLEAN MODE") AS relevance

relevance显示一个数值而不是匹配的关键字。

欢迎提出任何建议。

4

1 回答 1

1

获取结果数组,然后在 php 中使用循环 (for|foreach) 使用 preg_match_all() 中的相同关键字列表匹配字符串,即 [假设KEYWORD_LIST在 ',' 分隔值中]

 preg_match_all('/\b'.str_replace(',','\b|\b', **KEYWORD_LIST**).'\b/iu',$string,$match);
 $matched_keyword = array_unique($match[0]); 

$matched_keyword数组将提供所需匹配的关键字列表。

This is a probable solution in php instead of MySQL query itself

于 2014-10-14T09:59:20.003 回答