依次增加计数
Increase Count Sequentially
我有一个数据集可以跟踪用户何时阅读网站。用户可以随时阅读网站,因此该用户会出现多次。我想创建一个列来跟踪用户阅读特定网站的次数。但既然是时间序列,计数应该是递增的。我有大约 28gbs 所以 pandas 将无法处理工作负载,所以我必须将它写在 sql 中。
示例数据如下:
Date ID WebID
201901 Bob X-001
201902 Bob X-002
201903 Bob X-001
201901 Sue X-001
预期结果:
Date ID WebID Count
201901 Bob X-001 1
201902 Bob X-002 1
201903 Bob X-001 2
201901 Sue X-001 1
使用row_number()
select *,row_number() over(partition by id,webid order by date) cnt
from table
order by date,id
您可以使用下面的 sql 查询:
Select count(*) "Count" , Date, ID, WebID, from table group by webid, id, date
我有一个数据集可以跟踪用户何时阅读网站。用户可以随时阅读网站,因此该用户会出现多次。我想创建一个列来跟踪用户阅读特定网站的次数。但既然是时间序列,计数应该是递增的。我有大约 28gbs 所以 pandas 将无法处理工作负载,所以我必须将它写在 sql 中。
示例数据如下:
Date ID WebID
201901 Bob X-001
201902 Bob X-002
201903 Bob X-001
201901 Sue X-001
预期结果:
Date ID WebID Count
201901 Bob X-001 1
201902 Bob X-002 1
201903 Bob X-001 2
201901 Sue X-001 1
使用row_number()
select *,row_number() over(partition by id,webid order by date) cnt
from table
order by date,id
您可以使用下面的 sql 查询:
Select count(*) "Count" , Date, ID, WebID, from table group by webid, id, date