MySQL-mysql 单表多次查询和多表联合查询,哪个效率高?
比如获取一批文章数据,但是文章表某个字段只记录了作者ID,作者的姓名存在另一张用户表里,请问是两表联合一次查询比较快,还是先查文章表,然后计算出包含的作者ID,再去用户表查出满足ID的坐着姓名数组,再将两次获得的数据整合比较快?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
1、联合查询,联合多少张表?
2、单表多次查询,有多频繁?
如果访问量不是非常大的情况下,尽量易用和易理解就好。
如果访问量非常大,就要针对以下四个方面进行分析和优化了
数据库设计
sql语句
数据库参数
恰当的硬件资源
经常查询的字段适当建立索引效率提升明显,
但是注意,这也会增加大量的I/O,影响插入更新和删除的速度。
读写分离和表的水平垂直划分等等都很实用,通过曼日志或者explain很容易检验效果,对比效率。
做web开发,对数据库相关知识还是很有必要深入了解的。
对于传统的数据库涉及来说,尽可能减少数据库查询次数。
BUT:
其实整本书都明确表达一个意思,测试测试!做 benchmark!对于自己的数据环境,把两种方式都测试一下,用数据说话。
如果索引设置好的话,感觉应该是联合查询比较快些。
具体没测试过,平时遇到这种情况,都是直接使用的联合查询。