select count(*) from (select * from tablename group by subscriber_id,list_id order by null)
如果要排除subscriber_id或list_id的NULL值用下面的语句: select count(*) from (select count(*) as num from tablename where subscriber_id is not null and list_id is not null group by subscriber_id,list_id) b如果要subscriber_id和list_id都没有NULL值可以用下面的语句: select count(*) from (select count(*) as num from tablename group by ubscriber_id,list_id) b
select sum(cnt) from (select count(*) as cnt form tablename group by subscriber_id,list_id) tmp
我自己想了个办法select count(distinct(concat(subscriber_id,concat('_',list_id)))) from tablename
一个list可以有多个subscriber
所以比如有如下记录:
list_id = 1,subscriber_id = 1
list_id = 1,subscriber_id = 1
list_id = 2,subscriber_id = 1
list_id = 3,subscriber_id = 1
list_id = 3,subscriber_id = 2
统计的结果应该是4
select count(*) from (select count(*) as num from tablename where subscriber_id is not null and list_id is not null group by subscriber_id,list_id) b如果要subscriber_id和list_id都没有NULL值可以用下面的语句:
select count(*) from (select count(*) as num from tablename group by ubscriber_id,list_id) b