比如数据库里面有以下数据:
name               ip                       date
张三         192.168.1.1       2011-4-12 12:33:56
张三         192.168.1.3      2011-4-14  15:35:12
张三         192.168.0.5       2011-6-21 8:15:41
李四         56.41.45.55       2011-4-12 8:12:32
李四         56.41.74.45       2011-4-12 10:33:54
王五         56.41.45.78       2011-4-12 8:12:32
.
.
.
.
我想用一条SQL语句来查询出有几个不同的人,应该怎么查询?
select count(name) from table group by name这样查出来的结果是
3
2
1
.
.
.也就是每组分别有多少条数据,而我想知道的是一共有多少组,有高手没?

解决方案 »

  1.   

    select count(distinct name) from tb
      

  2.   

    select count( distinct name) from table 
      

  3.   


    select count(distinct name) from tb
    --或者
    select count(*) from tb group by name
      

  4.   

    --或者这样
    select count(*) from (select name from tb group by name) tb
      

  5.   

    他的第二句我试了,和我主帖里那条SQL得到的结果一样。