当前位置: 代码迷 >> Sql Server >> 分组得到组数有关问题。很简单的,速度来人
  详细解决方案

分组得到组数有关问题。很简单的,速度来人

热度:136   发布时间:2016-04-27 14:05:35.0
分组得到组数问题。很简单的,速度来人。
SELECT O_ID FROM TABLE GROUP BY O_ID


我某表按照 O_ID进行分组,需要得到组数,
看清楚,是得到一共有多少组,而不是每组的数据量。我知道每组的数据量是
 

SELECT count(O_ID) as 数据量 FROM TABLE GROUP BY O_ID
这样的结果是

o_id
1 count(number)
2 count(number)
3 count(number) 而我想得到的是一个结果集,比如这样的数据,就是得到3,表示有3个组。

外层再套一个子查询是能实现,但是觉得麻烦。select count(*) from (SELECT O_ID FROM TABLE GROUP BY O_ID) as A

有没更好的方法

------解决方案--------------------
select count(distinct O_ID from) tbl--组数也就是不同的o_id,所以只需查询出不同的o_id有多少个
------解决方案--------------------
SQL code
SELECT COUNT(DISTINCT O_ID) FROM TABLE
  相关解决方案