728x90
반응형
https://www.hackerrank.com/challenges/the-pads/problem
The PADS | HackerRank
Query the name and abbreviated occupation for each person in OCCUPATIONS.
www.hackerrank.com
문제



문제 접근 방식
이번 문제는 SQL 내장 함수에 대해 물어보는 문제였기에 쉬운 문제였다.
1) 이름과 괄호 속 직업의 첫 글자 출력하기
→ LEFT() 함수를 활용하여 첫번째 글자 출력
→ CONCAT() 함수를 활용하여 이름, 괄호, 직업의 첫글자 합쳐서 출력
2) 직업, 직업 별 데이터 갯수를 특정 문장에 적용하여 출력하기
→ LOWER() 함수를 활용하여 직업명을 소문자로 변경
→ CONCAT() 함수를 활용하여 문장, 갯수, 직업명 합쳐서 출력
# 1. 이름 + 괄호 속 직업의 첫 글자 출력 (이름 기준 오름차순 정렬)
SELECT CONCAT(NAME, '(', LEFT(OCCUPATION, 1), ')')
FROM OCCUPATIONS
ORDER BY NAME
;
# 2. 직업, 직업 별 데이터 갯수를 특정 문장에 적용하여 출력 (갯수, 직업명 기준 오름차순 정렬)
SELECT CONCAT('There are a total of ', TB.CNT, ' ', LOWER(TB.OCCUPATION), 's.')
FROM (
SELECT OCCUPATION, COUNT(NAME) AS CNT FROM OCCUPATIONS GROUP BY OCCUPATION
) TB
ORDER BY TB.CNT, TB.OCCUPATION
;728x90
반응형
'코딩 테스트 > MySQL' 카테고리의 다른 글
| [HackerRank] Contest Leaderboard (3) | 2025.08.06 |
|---|---|
| [HackerRank] Challenges (2) | 2025.08.05 |
| [HackerRank] Ollivander's Inventory (2) | 2025.07.29 |
| [HackerRank] Top Competitors (2) | 2025.07.28 |
| [HackerRank] The Report (0) | 2025.07.25 |