我想計算用戶在特定移動session中完成的總用戶參與(session持續時間)。我們也有來自移動設備的事件來跟蹤用戶是在應用程序的后臺還是前臺。當用戶將應用程序移動到后臺(應用程序離開屏幕)和前臺(應用程序在屏幕上再次可見)時,將跟蹤后臺和前臺事件。
Session Table:
Expected output:
說明:從打開應用程序到第一次后臺應用程序之間的時間為6秒(2023-12-05T05:40:28.096+000 0減去2023-12-05T05:40:22.000+0000)。從應用程序的最后一個前臺到應用程序的后續后臺之間的時間為11秒(2023-12-05T06:18:42.202+000 0減去2023-12-05T06:18:31.955+0000)。因此6+11=17秒。等等
我想寫sql查詢來計算session持續時間。任何sql語言都可以工作,我只想了解其中的邏輯。
根據Rob和Nick提供的答案,我參考并結合他們,創建了以下內容:
我只是計算用戶在session上的總停機時間,并減去session的總持續時間。