Skip to content

Commit a6ab43e

Browse files
committed
task 50
1 parent 739ecd7 commit a6ab43e

File tree

4 files changed

+43
-4
lines changed

4 files changed

+43
-4
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@
7373
47. Африканские города - [African Cities](./tasks/47.md)
7474
48. Средняя численность населения каждого континента - [Average Population of Each Continent](./tasks/48.md)
7575
49. Отчет - [The Report](./tasks/49.md)
76+
50. Лучшие конкуренты - [Top Competitors](./tasks/50.md)
7677

7778

7879
## В процессе... , будет дополнено)

tasks/50.md

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,48 @@
33
<img src="./art/50.png" alt="solution" >
44

55
#### eng:
6-
6+
Julia just finished conducting a coding contest, and she needs your help assembling the leaderboard! Write a query
7+
to print the respective hacker_id and name of hackers who achieved full scores for more than one challenge. Order
8+
your output in descending order by the total number of challenges in which the hacker earned a full score. If more
9+
than one hacker received full scores in same number of challenges, then sort them by ascending hacker_id.
710

811

912
#### рус:
10-
13+
Джулия только что закончила соревнование по программированию, и ей нужна твоя помощь в составлении таблицы лидеров!
14+
Напишите запрос для вывода соответствующего hacker_id и имен хакеров, набравших максимальное количество баллов за
15+
более чем одну задачу. Упорядочите результат в порядке убывания общего количества испытаний, в которых хакер
16+
заработал полный балл. Если несколько хакеров получили полные баллы за одинаковое количество испытаний, отсортируйте
17+
их по возрастанию hacker_id.
1118

1219

1320
#### код с коментариями:
1421
```sql
15-
22+
SELECT /* выбрать данные */
23+
h.hacker_id, /* столбец */
24+
h.name /* столбец */
25+
FROM Submissions s /* из таблицы */
26+
INNER JOIN Challenges c on s.challenge_id = c.challenge_id /* объединенная с таблицей по столбцу */
27+
INNER JOIN Difficulty d on d.difficulty_level = c.difficulty_level /* объединенная с таблицей по столбцу */
28+
INNER JOIN Hackers h on s.hacker_id = h.hacker_id /* объединенная с таблицей по столбцу */
29+
WHERE d.score = s.score /* где условие */
30+
GROUP BY h.hacker_id,h.name /* сгруппировать по */
31+
HAVING COUNT(s.hacker_id) > 1 /* где условие */
32+
ORDER BY COUNT(s.challenge_id) desc,s.hacker_id; /* отсортировать по */
1633
```
1734

1835
#### код для hackerrank:
1936
```sql
20-
37+
SELECT
38+
h.hacker_id,
39+
h.name
40+
FROM Submissions s
41+
INNER JOIN Challenges c on s.challenge_id = c.challenge_id
42+
INNER JOIN Difficulty d on d.difficulty_level = c.difficulty_level
43+
INNER JOIN Hackers h on s.hacker_id = h.hacker_id
44+
WHERE d.score = s.score
45+
GROUP BY h.hacker_id,h.name
46+
HAVING COUNT(s.hacker_id) > 1
47+
ORDER BY COUNT(s.challenge_id) desc,s.hacker_id;
2148
```
2249

2350

tasks/50.sql

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
SELECT
2+
h.hacker_id,
3+
h.name
4+
FROM Submissions s
5+
INNER JOIN Challenges c on s.challenge_id = c.challenge_id
6+
INNER JOIN Difficulty d on d.difficulty_level = c.difficulty_level
7+
INNER JOIN Hackers h on s.hacker_id = h.hacker_id
8+
WHERE d.score = s.score
9+
GROUP BY h.hacker_id,h.name
10+
HAVING COUNT(s.hacker_id) > 1
11+
ORDER BY COUNT(s.challenge_id) desc,s.hacker_id;

tasks/art/50.png

31 KB
Loading

0 commit comments

Comments
 (0)