我有食物和酒店的桌子 喜欢
CREATE TABLE `food_master` (
`id` int(6) unsigned NOT NULL auto_increment,
`caption` varchar(255) default NULL,
`category` varchar(10) default NULL,
`subcategory` varchar(10) default NULL,
`hotel` varchar(10) default NULL,
`description` text,
`status` varchar(10) default NULL,
`created_date` date default NULL,
`modified_date` date default NULL,
`chosen_mark` varchar(10) default 'no',
PRIMARY KEY (`id`),
FULLTEXT KEY `description` (`description`,`caption`)
) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=latin1
我有数据。我在此表中使用全文索引。我使用查询
SELECT * FROM food_master am
WHERE MATCH(description, caption) AGAINST ('Chicken')
当我在字段'caption'中有2'鸡'时,此查询正常工作。但是当我把它放到第三个时它不会返回一行。
答案 0 :(得分:1)
尝试将IN BOOLEAN MODE
作为
MySQL可以使用IN BOOLEAN MODE执行布尔全文搜索 修改。使用此修饰符,某些字符具有特殊含义 在搜索字符串中的单词的开头或结尾。
SELECT * FROM food_master
WHERE MATCH(description, caption) AGAINST ('Chicken' IN BOOLEAN MODE)