SQLite COUNT()函數(shù)用于檢索表達式或給定列的行數(shù)。
語法
SELECT COUNT(aggregate_expression)
FROM tables
[WHERE conditions];
在GROUP BY子句中使用COUNT()函數(shù)時的語法:
SELECT expression1, expression2, ... expression_n
COUNT(aggregate_expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, ... expression_n;
示例1:
假設(shè)有一個名為student的表,具有以下數(shù)據(jù):

從student表中檢索AGE大于22的學(xué)生人數(shù):
SELECT COUNT(*) AS "Number of students"
FROM STUDENT
WHERE AGE > 22;
執(zhí)行上面查詢代碼,得到以下結(jié)果 -
sqlite> SELECT COUNT(*) AS "Number of students"
...> FROM STUDENT
...> WHERE AGE > 22;
8
sqlite>
示例2:
計算AGE大于22歲的學(xué)生人數(shù),并按學(xué)生名字分組。
SELECT NAME, COUNT(*) AS "Number Of Students"
FROM STUDENT
WHERE AGE > 22
GROUP BY NAME;
執(zhí)行上面代碼,得到以下結(jié)果 -
sqlite> SELECT NAME, COUNT(*) AS "Number Of Students"
...> FROM STUDENT
...> WHERE AGE > 22
...> GROUP BY NAME;
Avgsu|1
Linsu|2
Maxsu|2
Minsu|2
Sqlsu|1
sqlite>
示例3:
計算每個地址的學(xué)生總?cè)藬?shù),按學(xué)生地址(Address)分組。
SELECT ADDRESS, COUNT(*) AS "Number Of Students"
FROM STUDENT
GROUP BY ADDRESS;
執(zhí)行上面代碼,得到以下結(jié)果 -
sqlite> SELECT ADDRESS, COUNT(*) AS "Number Of Students"
...> FROM STUDENT
...> GROUP BY ADDRESS;
Beijing|1
Guangzhou|2
Haikou|2
Shanghai|1
Shengzhen|2
Shenzhen|1
sqlite>