반응형
Notice
Recent Posts
Recent Comments
Link
개발은 처음이라 개발새발
해커랭크 Top Earners 문제 풀이 [MySQL] 본문
반응형
https://www.hackerrank.com/challenges/earnings-of-employees/problem?h_r=internal-search
이번에는 group by와 관련된 간단한 퀴즈를 풀어보겠습니다. 문제를 해석해보면 months와 salary를 곱해 earings라는 컬럼을 만들고 가장 높은 earings과 해당 earings를 기록한 사람이 몇명인지를 카운트해보라는 것을 알 수 있는데요. 우선 쿼리를 시작해보면
SELECT (months * salary) AS earnings
FORM employee
이렇게 earnings를 생성할 수 있습니다. 그다음에는 해당 earnings에 몇명이나 있는지 파악해야 겠죠. earnings들의 개수를 파악하기 위해서는 우선 earnings를 group by 해야 합니다. 그리고 count 함수를 사용하면 됩니다. 하지만 퀴즈에서 원하는 답은 가장 많은 earnings를 기록한 금액과 해당 금액의 인원인데요. 이를 위해서는 order by를 통해 내림 차순을 만들고 행의 노출을 하나만 하면 됩니다. 최종쿼리를 보겠습니다.
SELECT (months * salary) AS earnings, COUNT(*)
FORM employee
GORUP BY earnings
ORDER BY earnings DESC
LIMIT 1
반응형
'mysql' 카테고리의 다른 글
My SQL CASE문 퀴즈풀기-2 (0) | 2023.04.30 |
---|---|
My SQL CASE문 삼각형 종류 퀴즈로 연습하기[해커랭크] (1) | 2023.04.30 |
[해커랭크] MySQL 집계함수 문제 풀이 (0) | 2023.04.22 |
My SQL 소수점 처리 (0) | 2023.04.22 |
MySQL 기본 연산 COUNT, SUM, AVG, MIN/MAX (0) | 2023.04.10 |