热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql配置忽略空格_php–MySQL–搜索忽略空格的字段

您可能还需要考虑Sphinx或Lucene的全文,例如搜索mysql的全文.我没有亲自使用它们,但我听说两者都优于mysql内置的全文索引.所有这些方法都需要注意的一点是,它们需要

您可能还需要考虑

Sphinx或

Lucene的全文,例如搜索mysql的全文.我没有亲自使用它们,但我听说两者都优于mysql内置的全文索引.

所有这些方法都需要注意的一点是,它们需要一个特殊的索引来保持更新,这会增加更多的维护和服务器开销.

对于适用于产品名称或数字的无维护解决方案,只需按空格分割用户的搜索条件,并为查询添加LIKE’%term%’.

此外,我创建了一个特殊的搜索字段,它是产品名称或数字,其标记按字母顺序排列,空格和符号被剥离.每次产品名称更改时,您都需要更新此字段.然后除了对原始字段的查询之外,我还搜索这个新的剥离字段.例如,如果您的产品名称为“cat 3306 longblock”,则创建product_name_search字段并放置“3306catlongblock”.当用户搜索3306长块时您通过剥离符号并在空格上拆分来处理搜索:

WHERE (other product name search clauses) OR

(product_name_search LIKE '%3306%' AND product_name_search LIKE '%longblock%')

这个过程不如freetext好,但它对产品名称和数字的合理性很好.



推荐阅读
author-avatar
finessi_739
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有