Mysql I';我真的被这个问题难住了
我注意到搜索一个特定的单词对我们的用户搜索不起作用,我已经把问题缩小到这个小例子 如果您创建如下测试表:Mysql I';我真的被这个问题难住了,mysql,Mysql,我注意到搜索一个特定的单词对我们的用户搜索不起作用,我已经把问题缩小到这个小例子 如果您创建如下测试表: CREATE TABLE `names` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1; insert into `names
CREATE TABLE `names` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;
insert into `names`(`id`,`name`) values (1,'Joseph');
insert into `names`(`id`,`name`) values (2,'Dick');
insert into `names`(`id`,`name`) values (3,'Rather');
insert into `names`(`id`,`name`) values (4,'Steven');
insert into `names`(`id`,`name`) values (5,'Anna');
并执行此搜索:
SELECT * FROM `names` WHERE MATCH(NAME) AGAINST ('+rather* ' IN BOOLEAN MODE);
你会发现没有结果。
但是,用“宁愿”代替表中的任何其他名称都可以。。。
“宁愿”有什么错
它是mysql版本5.5.8
非常感谢您的帮助。。。我真的不知道这件事
谢谢。显然你没有创建全文索引 选中此项:
而是一个MySQL。默认情况下,无法对其进行全文搜索
为了解决这个问题,您可以通过将系统变量设置为空字符串来禁用stopwords。'rest'是MySql在布尔模式下进行全文搜索的stopwords
有关更多详细信息,请参见以下链接
即使更改了表格本身,也会出现同样的问题:更改表格名称添加全文NewIndex1
(name
);但是“宁愿”是我名字的一部分!boo-hoo:(我想知道我在网上错过了什么其他搜索结果……谢谢!