Allen's 데이터 맛집
HackerRank lv. Medium : The PADS 본문
문제
풀이
select
concat(name, '(', SUBSTRING(OCCUPATION, 1, 1), ')')
from
OCCUPATIONS
order by
name;
select
concat('There are a total of ', count(OCCUPATION),' ', LOWER(OCCUPATION),'s.')
from
OCCUPATIONS
group by
OCCUPATION
order by
count(OCCUPATION);
1. 첫 번째 쿼리는 직업(OCCUPATIONS) 테이블에서 각 직업의 이름을 그 직업의 첫 글자와 함께 출력합니다.
이를 위해 CONCAT() 함수를 사용하여 이름과 직업의 첫 글자를 결합하고, SUBSTRING() 함수를 사용하여 직업의 첫 글자를 추출합니다. 그런 다음 ORDER BY 절을 사용하여 이름을 기준으로 결과를 정렬합니다.
2. 두 번째 쿼리는 직업(OCCUPATIONS) 테이블에서 각 직업별로 그 직업의 수를 세고, 결과를 출력합니다.
COUNT() 함수를 사용하여 각 직업별로 수를 계산하고, 결과를 직업의 수와 함께 문자열로 출력합니다. 그리고 GROUP BY 절을 사용하여 직업으로 그룹을 지정하고, ORDER BY 절을 사용하여 직업의 수를 기준으로 결과를 정렬합니다.
https://www.hackerrank.com/challenges/the-pads/problem?isFullScreen=true
728x90