回答
本聲明:
SELECT COUNT(*) AS found
FROM names
WHERE name = 'Hulk'
將返回的記錄總數爲'Hulk'
這種說法:如果至少一個記錄存在
將返回1
,否則將不會返回。
如果您只需檢查是否存在至少一條記錄,則後者的查詢效率更高。
@OP:如果因爲某些原因需要使用'select count',請不要使用count(*)',這會使RDBMS工作太困難。使用'count(name)'(在這種情況下)。這樣,如果信息在索引中,它可以使用它。 (儘管我希望系統能夠爲你優化它,但我經常感到驚訝,因爲什麼系統不會爲你優化,所以......) – 2010-03-01 11:10:16
@TJCrowder:所有主要系統都會優化COUNT(*)可能的方式。在這種情況下,'COUNT(name)'將具有相同的語義和性能,但是一般來說,系統需要檢索'name'以確保它不爲null,所以效率會更低,甚至可能產生錯誤的結果。 – Quassnoi 2010-03-01 11:18:08
謝謝大家。 Stackoverflow的岩石! – ahmed 2010-03-01 11:53:54
- 1. JS:在這種情況下,我應該使用switch-case語句還是if/else?
- 2. java-18000多個案例,我應該使用switch還是if語句?
- 3. count ++在if語句中不起作用
- 4. 我應該使用SendDlgItemMessage還是在WTL中有這個包裝?
- 5. 我應該在這個問題中使用內聯還是#define?
- 6. PHP if語句:使用「OR」還是||?
- 7. 我們應該更喜歡使用Stored Proc還是Prepared語句
- 8. 我真的應該使用REGEX還是留在髒的Java IF語句中? (用於演出)
- 9. 我應該在if語句的add()和sub()中用作參數?
- 10. 在「With」語句中使用「IF」語句
- 11. 在mysql語句中使用if語句
- 12. 在if語句中使用where語句
- 13. 在Linq語句中使用'if'語句
- 14. 在for語句中使用if語句
- 15. 在If語句中使用CountIf語句
- 16. 爲什麼&在這個if語句中?
- 17. 我應該如何訂購if語句?
- 18. 在WHERE子句中有COUNT還是HAVING?
- 19. 使用Perl進行CGI表編程:我可以在格式中使用if語句還是循環語句?
- 20. 我應該使用if語句嗎?如果是的話,在這個PHP的情況下會有什麼好處?
- 21. 這個if語句會引發異常還是忽略它?
- 22. 我應該在這裏使用awakeFromNib還是initWithCoder?
- 23. 在這種情況下我應該使用PUT還是POST?
- 24. 我應該如何在SQL查詢中實現IF語句?
- 25. 我應該爲這個用例使用任務還是線程
- 26. 我應該總是在我的if語句中包含其他內容嗎?
- 27. 這是關於if語句中的if語句
- 28. 這是if語句嗎?
- 29. 如何在MATLAB中寫這個if語句的條件語句?
- 30. 應該在Java中避免多個if語句,如「if(condition)if(condition)...」嗎?
您也可以使用'WHERE ROWNUM = 1'來計算(*)查詢。 – jva 2010-03-01 13:07:46