我有一个表格,该表格汇总了用户在应用程序特定页面上花费的时间。 我想获取每天在此页面上花费的总时间。
表格:
user_id date label_of_the_page
1 2019-03-03T00:21:56.384Z . page we want
1 2019-03-03T00:21:57.314Z page we want
1 2019-03-03T00:21:58.024Z . page we want
1 2019-03-03T00:21:59.384Z new page
这个想法是使label_of_the_page第一次是我想要的页面与标签更改的时间有所不同。但是,我们必须为到达页面的每个人执行此操作。同一位user_id可能有好几次了,所以我认为按user_id分组不是一个好主意...
答案 0 :(得分:0)
所以我想最简单的方法是这样的:
使用三个标签创建新列:
情况1:我们感兴趣的页面中的用户,而在上一行中,他不是 情况2:用户在另一个页面中,并且在我们感兴趣的页面中,位于前一行中。 情况3:该页面中的用户,并且该用户还位于该页面的前一行,或者位于其他页面和其他页面的前一行
然后,我们只保留案例1和案例2的行,我们只需要为每个会话区分[时间(案例2)-时间(案例1)]。
但是我不确定如何使用SQL来完成所有这些工作。