King

business intelligence ,is my love。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

收到一朋友求助:如下图的报表格式 

思路如下

第一步:处理出基础数据是每个用户每个月属于每个区间的数据
savemoney_bymonth
month user save_qujian
201412 a1 5~50
201412 a2 50~100
201501 a1 5~50
201501 a2 50~100
201502 a1 5~50
201502 a2 50~100
201503 a1 5~50
201503 a2 50~100
201504 a1 5~50
201504 a2 50~100
201505 a1 5~50
201505 a2 50~100

第二步:根据传过来的查询类型 如果是3个月,查询时间querydate
--查出连续几个月都有存款的用户
select a.user,count(distinct a.month) from savemoney_bymonth a
where a.month>=dateadd(querydate,month,-2)
and a.month<=querydate
group by a.user having count(distinct a.month)=3
--第二步子查询
根据当前月份统计不同类型的用户量

 

posted on 2015-06-02 17:00  kingstudy  阅读(431)  评论(0编辑  收藏  举报