1. 程式人生 > >SQL優化之count(*),count(l列)

SQL優化之count(*),count(l列)

一、count各種用法的區別

1、count函式是日常工作中最常用的函式之一,用來統計表中資料的總數,常用的有count(*),count(1),count(列)。count(*)和count(1)是用來統計表中共有多少資料。是針對全表的

1 SELECT COUNT(*) FROM TAB1;
2 SELECT COUNT(1) FROM TAB1;
3 SELECT COUNT(*) FROM TAB1, TAB2;     #顯示兩表做笛卡爾積後的行數

 2、count(列)是針對於某一列的,如果此列值為空的話,count(列)是不會統計這一行的。NULL不會算在行數統計之內

1 CREATE TABLE T1(I int);
2 INSERT INTO T1 VALUES(1),(2),(NULL);
3 SELECT COUNT(*) FROM T1;              # 結果為3
4 SELECT COUNT(*) FROM T1;              # 結果為2