코딩 테스트/MySQL

[HackerRank] The PADS

알밤바 2025. 7. 30. 13:28
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