首先,分词功能已做好。
比如搜索“高级PHP教程”,能提取“高级 PHP 教程”
现在要做的就是按匹配数量来排序。同时含有所有词的内容排第一、含有两个词的排第二,只有一个词的排最后
求问大神这个功能怎么实现?
如果不使用 全文检索 的话,你的要求虽可实现,但效率极低(联合查询)
但是 mysql 的 全文检索 又不支持中文,这就需要安装第三方软件
通常安装第三方软件是需要付出些代价的
另一解决方案是预先将分词后的文章以十六进制内码方式存入数据库,在使用 mysql 的全文检索
但这需要多出至少一倍的存储空间
自己抉择吧
如果不使用 全文检索 的话,你的要求虽可实现,但效率极低(联合查询)
但是 mysql 的 全文检索 又不支持中文,这就需要安装第三方软件
通常安装第三方软件是需要付出些代价的
另一解决方案是预先将分词后的文章以十六进制内码方式存入数据库,在使用 mysql 的全文检索
但这需要多出至少一倍的存储空间
自己抉择吧
没有where的?似乎还是不行,不过先谢谢版本了。
哦,漏了 where
自己补上吧,反正毫无实际意义
你这种情况应该使用全文索引的。
可以考虑Coreseek + Sphinx
参考: http://www.cnblogs.com/yjf512/p/3581869.html
看来分词搜索真的是个坑啊
真心感谢两位版主的热心解答
你解决了吗,我现在也想这样弄啊,求解