mysql - 循环中逐个查询数据库和联表一次性查询数据库分别适用于哪种场景?
伊谢尔伦
伊谢尔伦 2017-04-17 15:00:31
0
2
850

一般来说循环中逐条查询的效率是比较低的,每次都产生连接以及并发的开销。
是否有些场景是适合在循环中逐个去查询,而不适合一次性查表的场景呢?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(2)
阿神

不要在循環中去查詢, 看不到任何在適合在循環中查詢的理由!
如果你是一個離線任務, 不用像web請求那樣即時返回, 並且數據量也比較大, 那合理的做法也是你對查詢做一定的切割, 每次獲取幾十到幾百的數據(過多的數據也會導致傳輸緩慢)
最後, 即使迫不得已真的要在循環中去查詢了, 你也應該使用同一個連接, 而不是每次都重新建立連接!

黄舟

有,例如:

SELECT * FROM table
WHERE ...
ORDER BY ..
LIMIT 10

這種時候如果WHERE條件有若干個(例如id=1,id=2),就只能分開查了。
雖然GROUP BY也可以,但GROUP BY在資料量大的時候效能可能比較低,一次GROUP BY查詢的時長可能比分開多次查詢的時間還要長。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!