【发布时间】:2016-10-11 06:25:40
【问题描述】:
我有以下 mysql 表结构:http://sqlfiddle.com/#!9/d36f69/2
CREATE TABLE IF NOT EXISTS `subcat` (
`id` int(11) DEFAULT '0',
`subCatName` varchar(255) NOT NULL,
`Keywords` varchar(255) DEFAULT NULL,
KEY `Keywords` (`Keywords`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
以下是两条记录:
id subCatName Keywords
1 Plastic baby toys, bag, basket
2 Metal metal finish, box cover
现在我想使用关键字字段搜索记录。假设我输入了
“婴儿玩具产品”
然后您可以看到在关键字字段中有“婴儿玩具”字样。这样子目录记录应该在搜索查询中返回。在这里您可以看到“产品”在关键字中没有匹配,但只有两个单词匹配。然后仍然第一个匹配的记录应该返回结果。
我们该怎么做?
【问题讨论】:
-
如果你想要这种类型的搜索,你应该在单独的行中规范化你的关键字列..
-
你必须使用mysql内置的全文搜索功能或者使用外部的全文搜索库,例如sphinx
标签: mysql