文章详情页
mysql - 循环中逐个查询数据库和联表一次性查询数据库分别适用于哪种场景?
浏览:150日期:2022-06-20 16:31:04
问题描述
一般来说循环中逐条查询的效率是比较低的,每次都产生连接以及并发的开销。是否有些场景是适合在循环中逐个去查询,而不适合一次性查表的场景呢?
问题解答
回答1:不要在循环中去查询, 看不到任何在适合在循环中查询的理由!如果你是一个离线任务, 不用像web请求那样即时返回, 并且数据量也比较大, 那合理的做法也是你对查询做一定的切割, 每次获取几十到几百的数据(过多的数据也会导致传输缓慢)最后, 即使迫不得已真的要在循环中去查询了, 你也应该使用同一个连接, 而不是每次都重新建立连接!
回答2:有,例如:
SELECT * FROM tableWHERE ...ORDER BY ..LIMIT 10
这种时候如果WHERE条件有若干个(例如id=1,id=2),就只能分开查了。虽然GROUP BY也可以,但GROUP BY在数据量大的时候性能可能比较低,一次GROUP BY查询的时长可能比分开多次查询的时间还要长。
相关文章:
1. nosql - mongodb 多组数据不固定字段查询问题 [百度党请绕道]2. 如何解决docker宿主机无法访问容器中的服务?3. 无法转换为java.lang.Throwable4. css3 - border-bottom 的长度可否超过盒子的宽度呢?实现如下图效果。(我的书下面的线)5. 微信小程序支持跳转到外部链接网页吗6. javascript - vue-cli项目中,获取微信access_token时遇到的跨域问题7. 老师百度网盘分享一下WampServer的包啊,我们下载几kb要下载一天的.8. javascript - 微信jssdk ios下自定义onMenuShareAppMessage 分享失效,Android分享成功9. vue.js - linux下怎么使用vue-cli的vue命令10. html5 geolocation 总是说位置不可用
排行榜
![nosql - mongodb 多组数据不固定字段查询问题 [百度党请绕道]](http://www.haobala.com/attached/image/18.jpg)