我有一张桌子和一些行,我想要全文搜索,但是没有空格的全文col。
例如:
我的MySQL表:
CREATE TABLE IF NOT EXISTS `members` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL DEFAULT '',
`fulltextcol` varchar(10) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
FULLTEXT KEY `fulltextcol` (`fulltextcol`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
插入内容:
INSERT INTO `members` (`id`, `username`, `fulltextcol`) VALUES
(1, 'username1', 'YYYYYNYNYN'),
(2, 'username2', 'NNNNYNYNYN'),
(3, 'username3', 'YYNNYNYYYY'),
(4, 'username4', 'YNYNYNYNYN');
现在我的mysql命令:
SELECT *,MATCH(fulltextcol) AGAINST('YNYNYNYNYN') as Relevance
FROM members
WHERE MATCH(fulltextcol) AGAINST('YNYNYNYNYN' IN BOOLEAN MODE)
HAVING Relevance > 0.2
ORDER BY Relevance DESC
是的一切都没问题,这个查询只选择完全匹配(所以只选择第4行),但我希望它必须选择所有分数/相关性。
例如,第一行有"YYYYYNYNYN"
并且它不完全匹配,但我希望此查询选择低相关性,如果第4行的相关性为1.18,则第1行的相关性可以为0.32。
我希望我能解释一下我的问题。
我该怎么做?