File tree 3 files changed +29
-9
lines changed
solution/1100-1199/1142.User Activity for the Past 30 Days II
3 files changed +29
-9
lines changed Original file line number Diff line number Diff line change @@ -75,13 +75,23 @@ Activity 表:
75
75
WITH
76
76
T AS (
77
77
SELECT
78
- count (DISTINCT session_id) AS sessions
78
+ COUNT (DISTINCT session_id) AS sessions
79
79
FROM Activity
80
- WHERE activity_date <= ' 2019-07-27' AND datediff (' 2019-07-27' , activity_date) < 30
80
+ WHERE activity_date <= ' 2019-07-27' AND DATEDIFF (' 2019-07-27' , activity_date) < 30
81
81
GROUP BY user_id
82
82
)
83
- SELECT ifnull(round( avg (sessions), 2 ), 0 ) AS average_sessions_per_user
83
+ SELECT IFNULL(ROUND( AVG (sessions), 2 ), 0 ) AS average_sessions_per_user
84
84
FROM T;
85
85
```
86
86
87
+ ``` sql
88
+ SELECT
89
+ IFNULL(
90
+ ROUND(COUNT (DISTINCT session_id) / COUNT (DISTINCT user_id), 2 ),
91
+ 0
92
+ ) AS average_sessions_per_user
93
+ FROM Activity
94
+ WHERE DATEDIFF(' 2019-07-27' , activity_date) < 30 ;
95
+ ```
96
+
87
97
<!-- tabs:end -->
Original file line number Diff line number Diff line change @@ -71,13 +71,23 @@ Activity table:
71
71
WITH
72
72
T AS (
73
73
SELECT
74
- count (DISTINCT session_id) AS sessions
74
+ COUNT (DISTINCT session_id) AS sessions
75
75
FROM Activity
76
- WHERE activity_date <= ' 2019-07-27' AND datediff (' 2019-07-27' , activity_date) < 30
76
+ WHERE activity_date <= ' 2019-07-27' AND DATEDIFF (' 2019-07-27' , activity_date) < 30
77
77
GROUP BY user_id
78
78
)
79
- SELECT ifnull(round( avg (sessions), 2 ), 0 ) AS average_sessions_per_user
79
+ SELECT IFNULL(ROUND( AVG (sessions), 2 ), 0 ) AS average_sessions_per_user
80
80
FROM T;
81
81
```
82
82
83
+ ``` sql
84
+ SELECT
85
+ IFNULL(
86
+ ROUND(COUNT (DISTINCT session_id) / COUNT (DISTINCT user_id), 2 ),
87
+ 0
88
+ ) AS average_sessions_per_user
89
+ FROM Activity
90
+ WHERE DATEDIFF(' 2019-07-27' , activity_date) < 30 ;
91
+ ```
92
+
83
93
<!-- tabs:end -->
Original file line number Diff line number Diff line change 2
2
WITH
3
3
T AS (
4
4
SELECT
5
- count (DISTINCT session_id) AS sessions
5
+ COUNT (DISTINCT session_id) AS sessions
6
6
FROM Activity
7
- WHERE activity_date <= ' 2019-07-27' AND datediff (' 2019-07-27' , activity_date) < 30
7
+ WHERE activity_date <= ' 2019-07-27' AND DATEDIFF (' 2019-07-27' , activity_date) < 30
8
8
GROUP BY user_id
9
9
)
10
- SELECT ifnull(round( avg (sessions), 2 ), 0 ) AS average_sessions_per_user
10
+ SELECT IFNULL(ROUND( AVG (sessions), 2 ), 0 ) AS average_sessions_per_user
11
11
FROM T;
You can’t perform that action at this time.
0 commit comments