我在想,如果它的速度更快檢索行數的「數」或使用限制只獲得1行。目的是要查看是否有任何行在給定某些Where條件時。更快地從數據庫獲取一行或數行數
1
A
回答
5
計數數量的count
總是昂貴的查詢,因爲這將需要進行全表掃描。您的要求是不是真的我清楚,但如果你只是想看看是否有任何數據會更便宜做常規選擇與限制1
-2
它的速度更快檢索行
0
它認爲這取決於哪個存儲引擎使用數據庫...
Anywawy,良好的實踐來檢驗羯羊有與否的結果是從第k個()函數檢查返回值!
5
計數必須在物理計算符合您的標準,這是不必要的工作,因爲你不關心數量的所有行。
看看使用EXISTS。
0
[我使用Oracle來作爲例子,但相同的概念全線通常適用。]
COUNT
有物理標識將要返回的所有行。根據查詢的複雜性,查詢計劃可能需要對查詢的一個或多個表進行表掃描。你需要做一個EXPLAIN PLAN
來確定。
返回單個行是否需要ORDER BY
可能需要相同的處理。該數據庫不能只是給你的第一行,直到
- 所有的行識別和
- 行已被排序。
另外,根據行數返回時,該ORDER BY
的複雜性,以及SGA
大小,臨時表可能需要創建(這會導致各種其他開銷)。
如果沒有ORDER BY
,單行應該會更快,因爲一旦數據識別單個行返回,它的完成。也就是說,從一次執行到下一次執行都不能保證行的返回順序相同,因此通常涉及到ORDER BY
。
相關問題
- 1. PHP:從數組或SQL表中更快地獲取數據?
- 2. 從MySQL數據庫獲取行和數據的最快方法?
- 3. 獲取數據庫錶行的快照?
- 4. 從數據庫更新數據從數據庫獲取數據
- 5. 如何從數據庫中獲取更快的數據
- 6. 從同一行數據庫中獲取數據
- 7. 哪個更快? 1百萬行數組或數據庫?
- 8. 從數據庫表中獲取行android
- 9. 如何從sqlite數據庫獲取行?
- 10. 無法從MySQL數據庫獲取行
- 11. 從數據庫表中獲取整行
- 12. 獲取單個數據庫一行PHP
- 13. 獲取數據庫錶行數javascript
- 14. 從Ingot_JQuery_JqGrid獲取行數據
- 15. 從oci8 oracle數據庫取一行
- 16. 更快地從視圖或表格中提取數據?
- 17. 從recyclerview的每一行獲取數據
- 18. 從數據庫獲取每行數據DataFrame Pyspark
- 19. 使用LINQ在運行時從數據庫獲取數據
- 20. 運行SQL從數據庫中獲取數據時出錯
- 21. 哪個更快發送隱藏表單數據或從數據庫獲取數據
- 22. IP地址從本地數據庫獲取數據
- 23. 從數據庫或列表中提取數據的更快方法?
- 24. 獲取從API行計數器數據
- 25. 從行()函數獲取數據
- 26. Php從數據庫中獲取從數據庫中獲取的循環中運行的數據
- 27. 過濾和獲取數據或過濾器然後獲取數據更快嗎?
- 28. 從android獲取本地sqlite數據庫
- 29. 如何從數據庫獲取'id'以更新特定行?
- 30. 解決方案:從大數據庫獲取報表更快
對於較大的表格,這不可能是真的。這是一個全表掃描,不管它如何索引,如果你做了一個計數。 – kurige 2010-04-23 12:27:08