...据库单独的字段里,用空格分开,检索的时候, 用mysql的全文检索,可以检索到结果, 然后在再程序里面对结果进行分析。 就比如说这样的sql语句是完全可以检索到的。 SELECT * FROM table_name WHERE MATCH(field_name) AGAINST('测试') ...
把全文检索的源代码托管到了github https://github.com/zcbenz/sbbs-search 对kbs的修改补丁还没有放上去,没太多时间去整理= = 很喜欢你们这样搞开源项目的公司。
用scws的MYSQL插件就不需要另外存一份了,而且操作也简便,对表设计和操作不需要做任何额外的处理。其它差别不大吧
tokenizer = full 就是不分词了。但不指定字段时还是会分词,除非你用 XSSearch::addQueryTerm 来构建查询
没有什么太大的问题,但必须存一个冗余字段。以前就有建议过一些朋友这么做。 还有,MYISAM内置的全文也只是一个简单的解决方案,最终效果可能也不是非常好,根据以前的测试50万左右的数据用内置的match .. against ... 效果...
原来是这样,分库倒是个不错的主意。自己根据条件决定要不要 addDb() 我担心的是通过 value 匹配才导致的慢,比如 addRange() 调用 或 setFacets()
[quote='hightman' pid='3556' dateline='1274018936'] 用scws的MYSQL插件就不需要另外存一份了,而且操作也简便,对表设计和操作不需要做任何额外的处理。其它差别不大吧 [/quote] 好的 谢谢