根据需求我需要查询用户第一次提现后每天做任务的情况,比如讲连续一个月的数据按照行展示。
我首先将用户的任务全都查出,然后根据邀请进行分组。但是并不是简单的分组,我们需要给每个字段都加上Max()函数,这样将会查询出用户某一天的最大值(其实用户某一天的数据只有一个不为0,其他都为0)。
SELECT c.login_name, MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 0 day),'%Y%m%d') THEN
c.counts
ELSE
0
END) 第一天,
MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 1 day),'%Y%m%d') THEN
c.counts
ELSE
0
END) 第二天,
MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 2 day),'%Y%m%d') THEN
c.counts
ELSE
0
END) 第三天,
MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 3 day),'%Y%m%d') THEN
c.counts
ELSE
0
END) 第四天,
MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 4 day),'%Y%m%d') THEN
c.counts
ELSE
0
END) 第五天,
MAX(CASE c.date
WHEN DATE_FORMAT( DATE_ADD(c.create_date, INTERVAL 5 day),'%Y%m%d') THEN