SQL 有组计数
SQL with group count
这很简单table,我对组计数有疑问。
STUID DEPT
100 Math
100 History
200 Math
200 History
这是我的查询
select count (distinct(STUID)), DEPT
from table
group by DEPT
数学成绩 2 分,历史成绩 2 分。
我需要为 STUID 计数而不重复,所以结果看起来像
STUID DEPT
1 Math
1 History
我的目标是按部门统计 stuid(无重复)组
I need count without duplicate for STUID
您的查询已经这样做了:它只计算每个 stuid
一次,即使它在给定部门中出现多次。例如,如果您有以下数据集,您仍然会得到相同的结果(即每个部门计数为 2:
STUID DEPT
100 Math
100 History
200 Math
200 History
100 Math
100 History
200 Math
200 History
如果您只想要不同的 dept
值,请使用 distinct
- 我们可以将文字 1
添加到每一行,但这不是很有用:
select distinct dept from mytable
这很简单table,我对组计数有疑问。
STUID DEPT
100 Math
100 History
200 Math
200 History
这是我的查询
select count (distinct(STUID)), DEPT
from table
group by DEPT
数学成绩 2 分,历史成绩 2 分。
我需要为 STUID 计数而不重复,所以结果看起来像
STUID DEPT
1 Math
1 History
我的目标是按部门统计 stuid(无重复)组
I need count without duplicate for STUID
您的查询已经这样做了:它只计算每个 stuid
一次,即使它在给定部门中出现多次。例如,如果您有以下数据集,您仍然会得到相同的结果(即每个部门计数为 2:
STUID DEPT
100 Math
100 History
200 Math
200 History
100 Math
100 History
200 Math
200 History
如果您只想要不同的 dept
值,请使用 distinct
- 我们可以将文字 1
添加到每一行,但这不是很有用:
select distinct dept from mytable