这是我的数据库代码。问题结果显示 0 而不是 1
CREATE TABLE IF NOT EXISTS `house_details` (
`houses_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`everything_search` text NOT NULL
FULLTEXT KEY `everything_search` (`everything_search`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1
INSERT INTO `house_details` (`everything_search`) VALUES
('Good very good new-market Mymenshing Family sourov 4564'),
这是我的数据库查询命令
SELECT * FROM house_details WHERE MATCH (everything_search) AGAINST ('Mymenshing') > 0 ORDER BY `houses_id` DESC LIMIT 0,3
*结果是* MySQL 返回一个空结果集(即零行)。 (查询花费了 0.0013 秒)
最佳答案
它在 bool 模式下适用于我:
SELECT * FROM house_details WHERE MATCH (everything_search)
AGAINST ('Mymenshing' In Boolean mode) > 0 ORDER BY `houses_id` DESC LIMIT 0,3
看这里:http://www.sqlfiddle.com/#!2/d4471/6
经过一番研究,我发现Mysql中的match-agains有一个错误:http://bugs.mysql.com/bug.php?id=19583
以下是修复“停用词”的方法:http://www.nivas.hr/blog/2009/09/15/how-to-disable-mysql-fulltext-stopwords/http://www.sqlfiddle.com/#!2/d4471/6
关于php - Mysql全文检索不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13309602/