Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,14 @@
<!--
Below are template for copilot to generate CR message.
Please DO NOT modify it.
-->


### Description

copilot:summary

### Explanation of Changes

copilot:walkthrough
copilot:walkthrough

-->
1 change: 1 addition & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"overrides": [
{
"files": [
"solution/0500-0599/0550.Game Play Analysis IV/Solution.sql",
"solution/0500-0599/0578.Get Highest Answer Rate Question/Solution.sql",
"solution/0600-0699/0610.Triangle Judgement/Solution.sql",
"solution/0600-0699/0618.Students Report By Geography/Solution.sql",
Expand Down
30 changes: 30 additions & 0 deletions solution/0500-0599/0550.Game Play Analysis IV/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,4 +71,34 @@ FROM
AND DATEDIFF(a.event_date, b.event_date) = -1;
```

```sql
# Write your MySQL query statement below
WITH
T AS (
SELECT
player_id,
datediff(
lead(event_date) OVER (
PARTITION BY player_id
ORDER BY event_date
),
event_date
) AS diff,
row_number() OVER (
PARTITION BY player_id
ORDER BY event_date
) AS rk
FROM Activity
)
SELECT
round(
count(DISTINCT if(diff = 1, player_id, NULL)) / count(
DISTINCT player_id
),
2
) AS fraction
FROM T
WHERE rk = 1;
```

<!-- tabs:end -->
30 changes: 30 additions & 0 deletions solution/0500-0599/0550.Game Play Analysis IV/README_EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,4 +73,34 @@ FROM
AND DATEDIFF(a.event_date, b.event_date) = -1;
```

```sql
# Write your MySQL query statement below
WITH
T AS (
SELECT
player_id,
datediff(
lead(event_date) OVER (
PARTITION BY player_id
ORDER BY event_date
),
event_date
) AS diff,
row_number() OVER (
PARTITION BY player_id
ORDER BY event_date
) AS rk
FROM Activity
)
SELECT
round(
count(DISTINCT if(diff = 1, player_id, NULL)) / count(
DISTINCT player_id
),
2
) AS fraction
FROM T
WHERE rk = 1;
```

<!-- tabs:end -->
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,20 @@ FROM
ON e1.id = e2.managerId;
```

```sql
# Write your MySQL query statement below
WITH
T AS (
SELECT
managerId,
count(1) OVER (PARTITION BY managerId) AS cnt
FROM Employee
)
SELECT DISTINCT name
FROM
Employee AS e
JOIN T AS t ON e.id = t.managerId
WHERE cnt >= 5;
```

<!-- tabs:end -->
Original file line number Diff line number Diff line change
Expand Up @@ -76,4 +76,20 @@ FROM
ON e1.id = e2.managerId;
```

```sql
# Write your MySQL query statement below
WITH
T AS (
SELECT
managerId,
count(1) OVER (PARTITION BY managerId) AS cnt
FROM Employee
)
SELECT DISTINCT name
FROM
Employee AS e
JOIN T AS t ON e.id = t.managerId
WHERE cnt >= 5;
```

<!-- tabs:end -->
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
# Write your MySQL query statement below
SELECT
name
FROM
Employee AS e1
JOIN (
WITH
T AS (
SELECT
managerId
managerId,
count(1) OVER (PARTITION BY managerId) AS cnt
FROM Employee
WHERE managerId IS NOT NULL
GROUP BY managerId
HAVING count(1) >= 5
) AS e2
ON e1.id = e2.managerId;
)
SELECT DISTINCT name
FROM
Employee AS e
JOIN T AS t ON e.id = t.managerId
WHERE cnt >= 5;