MySQL - COUNT() 函数
MySQL COUNT() 函数用于计算特定列中非 NULL 值的数量。如果表中不存在指定的行,则此函数返回 0。
如果我们以 COUNT(*) 的形式调用此函数,则此函数将返回指定表中的记录数,无论是否存在 NULL 值。
语法
以下是 MySQL COUNT() 函数的语法 -
COUNT(expr);
参数
此方法接受一个参数。下文将对此进行描述 -
expr: 列名或字符串值。
返回值
此函数返回符合指定条件的行数。如果没有行符合条件,则返回 0。
示例
在下面的查询中,我们使用 CREATE TABLE 语句创建一个名为 CUSTOMERS 的表,如下所示 -
CREATE TABLE CUSTOMERS ( ID INT AUTO_INCREMENT, NAME VARCHAR(20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), SALARY DECIMAL (18, 2), PRIMARY KEY (ID) );
以下查询将 7 条记录添加到上面创建的表中 -
INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ), (2, 'Khilan', 25, 'Delhi', 1500.00 ), (3, 'Kaushik', 23, 'Kota', 2000.00 ), (4, 'Chaitali', 25, 'Mumbai', 6500.00 ), (5, 'Hardik', 27, 'Bhopal', 8500.00 ), (6, 'Komal', 22, 'Hyderabad', 4500.00 ), (7, 'Muffy', 24, 'Indore', 10000.00 );
要验证记录是否已插入,请执行以下查询 -
Select * From CUSTOMERS;
以下是 CUSTOMERS 表 -
ID | NAME | AGE | ADDRESS | SALARY |
---|---|---|---|---|
1 | Ramesh | 32 | Ahmedabad | 2000.00 |
2 | Khilan | 25 | Delhi | 1500.00 |
3 | Kaushik | 23 | Kota | 2000.00 |
4 | Chaitali | 25 | Mumbai | 6500.00 |
5 | Hardik | 27 | Bhopal | 8500.00 |
6 | Komal | 22 | Hyderabad | 4500.00 |
7 | Muffy | 24 | Indore | 10000.00 |
现在,我们使用 MySQL COUNT() 函数来统计表中的记录数 -
SELECT COUNT(*) From CUSTOMERS;
输出
以下是 CUSTOMERS 表中的记录数 -
COUNT(*) |
---|
7 |
示例
考虑之前创建的 CUSTOMERS 表,并使用 GROUP BY 子句和 COUNT() 函数返回客户年龄的数量 -
SELECT AGE, COUNT(*) FROM CUSTOMERS GROUP BY AGE;
输出
上述查询的输出如下所示 -
AGE | COUNT(*) |
---|---|
32 | 1 |
25 | 2 |
23 | 1 |
27 | 1 |
22 | 1 |
24 | 1 |
示例
此处,我们统计"CUSTOMERS"表中"SALARY"大于 5000 的行数 -
SELECT COUNT(SALARY) FROM CUSTOMERS WHERE SALARY > 5000;
输出
这将产生以下结果 -
COUNT(SALARY) |
---|
3 |