SQL count if
在SQL查询中,有时我们需要统计满足特定条件的记录数量。这时就可以使用COUNT
函数结合WHERE
子句来实现需求。这种情况下通常我们会使用COUNT
函数来统计符合条件的记录数量,以便更好地了解数据。
使用COUNT函数
COUNT
函数是SQL中常用的聚合函数之一,用于统计结果集中行的数量。在结合WHERE
子句使用时,可以实现统计满足特定条件的记录数量。
语法
COUNT
函数的基本语法如下:
SELECT COUNT(column_name)
FROM table_name
WHERE condition;
其中column_name
为需要统计的列名,table_name
为数据表的名称,condition
为筛选条件。
示例
假设有一个名为students
的表,存储了学生的姓名和成绩信息,结构如下:
id | name | score |
---|---|---|
1 | Alice | 85 |
2 | Bob | 90 |
3 | Charlie | 75 |
4 | David | 88 |
5 | Emma | 92 |
现在我们想统计成绩大于等于80分的学生数量,可以使用以下SQL语句:
SELECT COUNT(*)
FROM students
WHERE score >= 80;
运行以上SQL语句后,会返回成绩大于等于80分的学生数量,即3。
使用COUNT DISTINCT
除了基本的COUNT
函数外,还可以使用COUNT DISTINCT
函数来统计不重复的记录数量。
语法
COUNT DISTINCT
函数的语法如下:
SELECT COUNT(DISTINCT column_name)
FROM table_name
WHERE condition;
其中column_name
为需要统计不重复值的列名。
示例
假设我们有一个表sales
,记录了每位销售员每次销售的订单编号和金额,结构如下:
id | salesman | order_id | amount |
---|---|---|---|
1 | Alice | 1001 | 100 |
2 | Bob | 1002 | 150 |
3 | Charlie | 1001 | 100 |
4 | Alice | 1003 | 120 |
5 | David | 1004 | 200 |
如果我们想统计不重复的销售订单数量,可以使用以下SQL语句:
SELECT COUNT(DISTINCT order_id)
FROM sales;
运行以上SQL语句后,会返回不重复的销售订单数量,即4。
结语
COUNT
函数是SQL中非常有用的函数之一,可以帮助我们快速统计符合条件的记录数量。通过合理地结合WHERE
子句和COUNT
函数,我们可以更好地了解数据并进行分析。同时,COUNT DISTINCT
函数也提供了统计不重复记录数量的功能,能够满足更多的需求。