SQL语句:统计指定字段,等于不同值的条数

例表:

===================================
ID 字段1 字段2 字段3
1 A B C
2 X B E
3 A B U
4 X D E
5 A K N
6 X D C
===================================
如SQL语句统计:字段1有多少不同的值,A值一种,X值一种,答案应是2
字段2有多少不同的值,B值一种,D值一种,K值一种,答案应是3
字段3有多少不同的值,C值一种,E值一种,U值一种,N值,答案应是3
Ps:重复值只算一种,如字段1,有3个相同值A。
要求SQL语句简洁,执行速度快。。。。

方法一:通过group by ,之后count条数实现。
sql:select count(1) from tablename group by columes;
方法二:通过district函数来直接取出唯一字段,之后统计数量:
sql:select count(ditrict(columes)) from tablename;
解释:columes表示的是特殊字段。
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-07-12
select count(distinct 字段1),count(distinct 字段2),count(distinct 字段3) from 表名

追问

SELECT COUNT(DISTINCT 字段1) FROM TableName WHERE 月份=3

数据库ACCESS,调试出错,请问问题出在那?
是ACCESS不支持?

追答

。。。。。。。。

第2个回答  2014-07-12
语句:
select count(distinct 字段1),count(distinct 字段2),count(distinct 字段3) from 表本回答被提问者采纳
相似回答