mysql count(*),count(1)与count(column)区别
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
count(*)對(duì)行的數(shù)目進(jìn)行計(jì)算,包含NULL
count(column)對(duì)特定的列的值具有的行數(shù)進(jìn)行計(jì)算,不包含NULL值。
count()還有一種使用方式,count(1)這個(gè)用法和count(*)的結(jié)果是一樣的。
性能問(wèn)題
1.任何情況下SELECT COUNT(*) FROM tablename是最優(yōu)選擇;
2.盡量減少SELECT COUNT(*) FROM tablename WHERE COL = ‘value’ 這種查詢;
3.杜絕SELECT COUNT(COL) FROM tablename WHERE COL2 = ‘value’ 的出現(xiàn)。
如果表沒(méi)有主鍵,那么count(1)比count(*)快。
如果有主鍵,那么count(主鍵,聯(lián)合主鍵)比count(*)快。
如果表只有一個(gè)字段,count(*)最快。
count(1)跟count(主鍵)一樣,只掃描主鍵。count(*)跟count(非主鍵)一樣,掃描整個(gè)表。明顯前者更快一些。
來(lái)自:http://blog.csdn.net/lzm18064126848/article/details/50491956
關(guān)于count(1), count(*)不同引擎的性能影響,可以參考這篇博客 :mysql中count()統(tǒng)計(jì)總結(jié)與思考
轉(zhuǎn)載于:https://my.oschina.net/zjllovecode/blog/1615714
總結(jié)
以上是生活随笔為你收集整理的mysql count(*),count(1)与count(column)区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 初一七年级计算机信息全册教案,新川教版七
- 下一篇: mysql5.7json查询_MySql