sql function最佳效能寫法

sql提供一些方便的查詢function,例如count、min、max、sum等等
但究竟怎麼寫效能會比較好呢?
一般常見的寫法有以下三種(假設主鍵是id)
SELECT COUNT(*) FROM `table`
SELECT COUNT(1) FROM `table`
SELECT COUNT(`id`) FROM `table`

小弟廢話不多說了,直接po上我自己的測試數據
___COUNT(*) ______ COUNT(1) ______ COUNT(`id`)____
0.1283900737760 | 0.1033070087430 | 0.0965209007263
0.0977160930634 | 0.0935349464417 | 0.0874459743500

這是一次連續查詢1000次,對三者輪流查詢100次的total
可以發現COUNT(`id`) 的寫法明顯獲勝,感謝CFC大大提示可能是因為主鍵具有索引性(index),所以查詢速度較快。

分享給大家 :)

留言

這個網誌中的熱門文章

神之雫 的 雫 (雨下) 怎麼唸、意思是什麼

[已解決] 入肉 (肏) 的注音/怎麼唸?意思是什麼?(兒童不宜)

哆啦A夢放上任何東西都無違和感、彷彿有音效的滑鼠墊 這裡買得到