File tree Expand file tree Collapse file tree 15 files changed +108
-107
lines changed
0183.Customers Who Never Order
0184.Department Highest Salary
0185.Department Top Three Salaries
0196.Delete Duplicate Emails Expand file tree Collapse file tree 15 files changed +108
-107
lines changed Original file line number Diff line number Diff line change 57
57
### ** SQL**
58
58
59
59
``` sql
60
- SELECT Name AS Customers
60
+ # Write your MySQL query statement below
61
+ SELECT name AS Customers
61
62
FROM Customers
62
63
WHERE
63
64
id NOT IN (
64
- SELECT CustomerId
65
+ SELECT customerId
65
66
FROM Orders
66
67
);
67
68
```
68
69
69
70
``` sql
70
- SELECT
71
- c . Name AS Customers
71
+ # Write your MySQL query statement below
72
+ SELECT name AS Customers
72
73
FROM
73
- customers AS c
74
- LEFT JOIN orders AS o ON c .Id = o .CustomerId
75
- WHERE o .CustomerId IS NULL ;
74
+ Customers AS c
75
+ LEFT JOIN Orders AS o ON c .id = o .customerId
76
+ WHERE o .id IS NULL ;
76
77
```
77
78
78
79
<!-- tabs:end -->
Original file line number Diff line number Diff line change @@ -78,22 +78,23 @@ Orders table:
78
78
### ** SQL**
79
79
80
80
``` sql
81
- SELECT Name AS Customers
81
+ # Write your MySQL query statement below
82
+ SELECT name AS Customers
82
83
FROM Customers
83
84
WHERE
84
85
id NOT IN (
85
- SELECT CustomerId
86
+ SELECT customerId
86
87
FROM Orders
87
88
);
88
89
```
89
90
90
91
``` sql
91
- SELECT
92
- c . Name AS Customers
92
+ # Write your MySQL query statement below
93
+ SELECT name AS Customers
93
94
FROM
94
- customers AS c
95
- LEFT JOIN orders AS o ON c .Id = o .CustomerId
96
- WHERE o .CustomerId IS NULL ;
95
+ Customers AS c
96
+ LEFT JOIN Orders AS o ON c .id = o .customerId
97
+ WHERE o .id IS NULL ;
97
98
```
98
99
99
100
<!-- tabs:end -->
Original file line number Diff line number Diff line change 1
- SELECT Name AS Customers
1
+ # Write your MySQL query statement below
2
+ SELECT name AS Customers
2
3
FROM Customers
3
4
WHERE
4
5
id NOT IN (
5
- SELECT CustomerId
6
+ SELECT customerId
6
7
FROM Orders
7
8
);
Original file line number Diff line number Diff line change @@ -122,23 +122,18 @@ WHERE
122
122
``` sql
123
123
# Write your MySQL query statement below
124
124
WITH
125
- t AS (
125
+ T AS (
126
126
SELECT
127
- departmentId,
128
- name,
129
- salary,
127
+ * ,
130
128
rank() OVER (
131
129
PARTITION BY departmentId
132
130
ORDER BY salary DESC
133
131
) AS rk
134
132
FROM Employee
135
133
)
136
- SELECT
137
- d .name AS Department,
138
- t .name AS Employee,
139
- salary AS Salary
134
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
140
135
FROM
141
- t
136
+ T AS t
142
137
JOIN Department AS d ON t .departmentId = d .id
143
138
WHERE rk = 1 ;
144
139
```
Original file line number Diff line number Diff line change @@ -120,23 +120,18 @@ WHERE
120
120
``` sql
121
121
# Write your MySQL query statement below
122
122
WITH
123
- t AS (
123
+ T AS (
124
124
SELECT
125
- departmentId,
126
- name,
127
- salary,
125
+ * ,
128
126
rank() OVER (
129
127
PARTITION BY departmentId
130
128
ORDER BY salary DESC
131
129
) AS rk
132
130
FROM Employee
133
131
)
134
- SELECT
135
- d .name AS Department,
136
- t .name AS Employee,
137
- salary AS Salary
132
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
138
133
FROM
139
- t
134
+ T AS t
140
135
JOIN Department AS d ON t .departmentId = d .id
141
136
WHERE rk = 1 ;
142
137
```
Original file line number Diff line number Diff line change 1
1
# Write your MySQL query statement below
2
2
WITH
3
- t AS (
3
+ T AS (
4
4
SELECT
5
- departmentId,
6
- name,
7
- salary,
5
+ * ,
8
6
rank() OVER (
9
7
PARTITION BY departmentId
10
8
ORDER BY salary DESC
11
9
) AS rk
12
10
FROM Employee
13
11
)
14
- SELECT
15
- d .name AS Department,
16
- t .name AS Employee,
17
- salary AS Salary
12
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
18
13
FROM
19
- t
14
+ T AS t
20
15
JOIN Department AS d ON t .departmentId = d .id
21
16
WHERE rk = 1 ;
Original file line number Diff line number Diff line change @@ -125,25 +125,20 @@ WHERE
125
125
``` sql
126
126
# Write your MySQL query statement below
127
127
WITH
128
- t AS (
128
+ T AS (
129
129
SELECT
130
- departmentId,
131
- name,
132
- salary,
130
+ * ,
133
131
dense_rank() OVER (
134
132
PARTITION BY departmentId
135
133
ORDER BY salary DESC
136
134
) AS rk
137
135
FROM Employee
138
136
)
139
- SELECT
140
- d .name AS Department,
141
- t .name AS Employee,
142
- salary AS Salary
137
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
143
138
FROM
144
- t
139
+ T AS t
145
140
JOIN Department AS d ON t .departmentId = d .id
146
- WHERE rk < 4 ;
141
+ WHERE rk <= 3 ;
147
142
```
148
143
149
144
<!-- tabs:end -->
Original file line number Diff line number Diff line change @@ -121,25 +121,20 @@ WHERE
121
121
``` sql
122
122
# Write your MySQL query statement below
123
123
WITH
124
- t AS (
124
+ T AS (
125
125
SELECT
126
- departmentId,
127
- name,
128
- salary,
126
+ * ,
129
127
dense_rank() OVER (
130
128
PARTITION BY departmentId
131
129
ORDER BY salary DESC
132
130
) AS rk
133
131
FROM Employee
134
132
)
135
- SELECT
136
- d .name AS Department,
137
- t .name AS Employee,
138
- salary AS Salary
133
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
139
134
FROM
140
- t
135
+ T AS t
141
136
JOIN Department AS d ON t .departmentId = d .id
142
- WHERE rk < 4 ;
137
+ WHERE rk <= 3 ;
143
138
```
144
139
145
140
<!-- tabs:end -->
Original file line number Diff line number Diff line change 1
1
# Write your MySQL query statement below
2
2
WITH
3
- t AS (
3
+ T AS (
4
4
SELECT
5
- departmentId,
6
- name,
7
- salary,
5
+ * ,
8
6
dense_rank() OVER (
9
7
PARTITION BY departmentId
10
8
ORDER BY salary DESC
11
9
) AS rk
12
10
FROM Employee
13
11
)
14
- SELECT
15
- d .name AS Department,
16
- t .name AS Employee,
17
- salary AS Salary
12
+ SELECT d .name AS Department, t .name AS Employee, salary AS Salary
18
13
FROM
19
- t
14
+ T AS t
20
15
JOIN Department AS d ON t .departmentId = d .id
21
- WHERE rk < 4 ;
16
+ WHERE rk <= 3 ;
Original file line number Diff line number Diff line change @@ -61,13 +61,29 @@ Person 表:
61
61
### ** SQL**
62
62
63
63
``` sql
64
+ # Write your MySQL query statement below
64
65
DELETE FROM Person
65
66
WHERE
66
- Id NOT IN (
67
- SELECT
68
- MIN (Id)
69
- FROM (SELECT * FROM Person) AS p
70
- GROUP BY p .Email
67
+ id NOT IN (SELECT min (id) FROM (SELECT * FROM Person) AS p GROUP BY email);
68
+ ```
69
+
70
+ ``` sql
71
+ # Write your MySQL query statement below
72
+ DELETE FROM Person
73
+ WHERE
74
+ id NOT IN (
75
+ SELECT id
76
+ FROM
77
+ (
78
+ SELECT
79
+ id,
80
+ row_number() OVER (
81
+ PARTITION BY email
82
+ ORDER BY id
83
+ ) AS rk
84
+ FROM Person
85
+ ) AS p
86
+ WHERE rk = 1
71
87
);
72
88
```
73
89
You can’t perform that action at this time.
0 commit comments