mysql模糊查询的多表联合问题详解
问题描述
外贸项目中,查询A表三个字符串字段和B表一个字符串字段。条件是这四个字段含有搜索关键词,中英文和数字都有。现有多个疑问:
数据量是否会超出MySQL承受范围?若使用搜索框架,分词是否会影响准确性?若不分词,使用MySQL还是搜索框架进行模糊搜索?MySQL查询时,是联合查询还是建立新表查询?
解答
数据量承受能力:二三十万的数据量,MySQL可以承受。但是,如果使用Elasticsearch(es),性能会更好。搜索框架分词:es支持自定义分词器,可以解决分词不准确的问题。模糊搜索选择:MySQL和es都可以进行模糊搜索,但MySQL性能较差。联合查询与单独建表:联合查询和单独建表的效果差别不大。可以使用视图将四个字段集合到一起,避免单独建表。
推荐方案
建议使用Elasticsearch。es具有更好的性能和分词功能。
其他建议
不要使用LIKE进行模糊搜索,效率较低。可以使用全文索引提高查询速度。优化数据库结构,使用合适的字段类型。
以上就是MySQL多表联合模糊查询性能瓶颈及最佳实践?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1319144.html
微信扫一扫
支付宝扫一扫