SELECT nCard_Key, nCardName, MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)AS score FROM `ncard` WHERE MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE) ORDER BY score DESC;理论上 'egg roll' 就是找出文本中存在 egg 或 roll 的记录 如果两个词均存在的话. 它们相似度匹配值会更高些的.
敢问--------------其实是为了解决下面的问题。从数据库里面搜索nCardName比如说a b,搜索的结果要把有a b的排在最上面,只有a或者b的排在下面,怎么解决??----------------要实现这个,有什么好的方法那??我就看到mysql介绍里面有这么一段::mysql> SELECT id, body, MATCH (title,body) AGAINST -> ('Security implications of running MySQL as root') AS score -> FROM articles WHERE MATCH (title,body) AGAINST -> ('Security implications of running MySQL as root'); +----+-------------------------------------+-----------------+ | id | body | score | +----+-------------------------------------+-----------------+ | 4 | 1. Never run mysqld as root. 2. ... | 1.5055546709332 | | 6 | When configured properly, MySQL ... | 1.31140957288 | +----+-------------------------------------+-----------------+ 2 rows in set (0.00 sec)就是为了得到score的值,有什么好的建议。。
呵呵, 加个 ORDER BY 就行了. 就是上面我给你的语句呀.SELECT nCard_Key, nCardName, MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)AS score FROM `ncard` WHERE MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE) ORDER BY score DESC;
nCard_Key,
nCardName,
MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)AS score
FROM `ncard`
WHERE MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)
ORDER BY score DESC;理论上 'egg roll' 就是找出文本中存在 egg 或 roll 的记录
如果两个词均存在的话.
它们相似度匹配值会更高些的.
-> ('Security implications of running MySQL as root') AS score
-> FROM articles WHERE MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root');
+----+-------------------------------------+-----------------+
| id | body | score |
+----+-------------------------------------+-----------------+
| 4 | 1. Never run mysqld as root. 2. ... | 1.5055546709332 |
| 6 | When configured properly, MySQL ... | 1.31140957288 |
+----+-------------------------------------+-----------------+
2 rows in set (0.00 sec)就是为了得到score的值,有什么好的建议。。
加个 ORDER BY 就行了.
就是上面我给你的语句呀.SELECT
nCard_Key,
nCardName,
MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)AS score
FROM `ncard`
WHERE MATCH (nCardName) AGAINST ('egg roll' IN BOOLEAN MODE)
ORDER BY score DESC;