初学者求教关于选取重复数据sql

菜鸟求教关于选取重复数据sql
本帖最后由 hyxiang87 于 2013-12-30 14:46:59 编辑
现在有一张detail表,数据如下

初学者求教关于选取重复数据sql

要求是选出每个月都来电的号码并计算每个月该号码的来电次数

初学者求教关于选取重复数据sql
------解决方案--------------------
引用:
Quote: 引用:

select month,callin_num,count(callin_num) from t group by t.month,callinnum;

我需要得出的结果集是每个月都打来的电话号码和每个月都打来的次数,那些只打过一次的号码不需要


 select callin_num,count(distinct month) from t group by callinnum
having count(distinct month)=(select count(distinct month) from t);
 
------解决方案--------------------
先查找每个月都来电话的电话号码,再统计每个号码每个月打的次数
select count(month),month,callin_num from detail 
  where callin_num in(
    select A.CALLIN_NUM CALL_COUNT from 
      (SELECT DISTINCT * FROM DETAIL) A 
      GROUP BY
      A.CALLIN_NUM 
      HAVING 
      COUNT(A.CALLIN_NUM)=(SELECT COUNT(DISTINCT MONTH) FROM DETAIL)) 
      group by month,callin_num

初学者求教关于选取重复数据sql