注意:MySQL 全文检索不支持多字节
WordPress 的搜索用的是简单的匹配,不支持分词之类的特性。MySQL 4 之后增加了全文检索功能,通过使用全文检索,可以是搜索结果更加精确,而且结果也可以按照相关度排序,速度也快,非常方便。
基于上面的想法,今天花了一天的时间开发了一个 WordPress 全文搜索的插件,准备先用在这里和 Moneybeta 上,完善后再发布出来。基本上完成 80% 后测试,奇怪,就是搜索不到结果。我下意识的随便敲了几个英文单词,竟然有结果了,难道是 MySQL 不支持多字节字符的全文搜索?
Google,最终肯定了我的判断。没想到强大的 MySQL 竟然又把我们这些古老文明给遗忘了。最郁闷的是,我今天这一天算是白忙活了。TNND。
得出两个结论,也可以说是教训:第一,中文网站就不要用 MySQL 的全文搜索功能了,如果你也有打算这么做的话,赶快将你的想法消灭在萌芽里;第二,以后想做什么东西之前先 Google,免得做无用功。
原文链接**:花儿开了 - 注意:MySQL 全文检索不支持多字节
** 本博客文章全部原创,原则上不欢迎全文转载,如需转载(包括部分转载,使用文章图片等)请务必标注原文链接!同时,本博文章不欢迎任何形式的派生及篡改,如需引用,请使用引用通告(Trackback) - http://blog.istef.info/2006/09/06/the-fulltext.../trackback/。商业网站使用请务必先取得作者授权!

正想做这件事呢。看来不用做了。
mysql全文检索一直就不支持多字节字符集的… 而且我觉着其实如果支持的话 大概现在已经有人写出可用的插件了呢.
因为牵扯中文分词问题 如果想支持也是挺困难的事 英文的话 分词只要按规定的停止符就可以了.
前几天使劲翻mysql的官方手册 蛮好的 当时也顺便试了试全文检索
to BunnyQ: 有道理呀,刚找了一下,好像有一个第三方出的支持中文全文搜索的 MySQL,据说不太稳定,不敢用也不想用
需要替换mysql中的简单的单字符分词部分,换成一个比较好的中文分词模块,还要保证稳定性。这个一般的人力想做圆满还是挺难的。
嗯,是不支持。这个事也麻烦呀,中文的分词,Google和百度都没完全处理好呢。
其实匹配搜索也不错呀,大不了搜索时自己在两个词中间加空格吗。我用的K2模版的搜索功能就做的不错。