按date user_id分组得到date user_id2019-01-08 15189102019-01-08 15433582019-01-08 15433582019-01-08 15189102019-01-08 15635742019-01-08 15635742019-01-08 15629392019-01-08 15609242019-01-08 15246862019-01-08 15544952019-01-08 15394852019-01-08 15394852019-01-08 15433582019-01-08 15433562019-01-08 15394852019-01-08 15629392019-01-08 15394852019-01-08 15394852019-01-08 15394852019-01-08 15394852019-01-08 1543358希望得到date user_id total2019-01-08 1518910 92019-01-08 1543358 92019-01-08 1543358 92019-01-08 1518910 92019-01-08 1563574 92019-01-08 1563574 92019-01-08 1562939 92019-01-08 1560924 92019-01-08 1524686 92019-01-08 1554495 92019-01-08 1539485 92019-01-08 1539485 92019-01-08 1543358 92019-01-08 1543356 92019-01-08 1539485 92019-01-08 1562939 92019-01-08 1539485 92019-01-08 1539485 92019-01-08 1539485 92019-01-08 1539485 92019-01-08 1543358 99表示不同的用户数
2 回答
桃花长相依
TA贡献1860条经验 获得超8个赞
我先理解一下需求,数据 1 是原始数据,数据 2 是拿出原始数据的同时增加一列,这列数据为每个日期下不同 uid 个数
如果理解没错的话,可以用下面这条 SQL 实现(表名假设为test_group
)
红糖糍粑
TA贡献1815条经验 获得超6个赞
select b.date, b.user_id, c.total from test_group b join ( select date, count(*) as total from ( select date, user_id from test_group group by user_id,date ) a group by date ) con b.date = c.date;
ps: 复杂的 sql 会有性能问题,自己斟酌哈
添加回答
举报
0/150
提交
取消