~고군분투 인생살이~

[MEDIUM] The PADS 본문

SQL/HACKER_RANK

[MEDIUM] The PADS

소금깨 2022. 10. 12. 02:06
 

The PADS | HackerRank

Query the name and abbreviated occupation for each person in OCCUPATIONS.

www.hackerrank.com

 

문제 조건

1. Occupations 테이블에 있는 Name을 알파벳 순서로 정렬하여 출력하는데, Name 바로 끝에 각 직업의 첫 문자열을 괄호를 이용하여 추가하여 출력시켜라. 

2. 각 직업에 속하는 Name을 카운트 시켜라. 1차 정렬기준은 [occupation_count]를 오름차순으로, 2차 정렬기준은  [occupation]의 알파벳 순서로 정렬해라. 

 

문제 풀이 

select concat(name, '(', left(occupation,1), ')')
from occupations
order by name;

select concat("There are a total of ", count(*),' ',lower(occuation),'s.')
from occupations
group by occupation
order by count(*), occupation;

 

배운 점 

1. UNION을 사용해서 출력하게 되면 레코드의 집합을 순서 없이 랜덤하게 나타냄 

     두 쿼리 사이에 union을 이용해서 합치려고 했는데, 문법 오류가 발생함. 그래서 왜지? 했더니 UNION을 사용해서 출력하게 되면 레코드의 집합을 순서 없이 랜덤하게 나타냄. 그래서 order by를 통해 정렬이 진행되었다 하더라도 합쳐진 후의 정렬은order by절의 영향을 받지 못함. 

 

 

'SQL > HACKER_RANK' 카테고리의 다른 글

[EASY] Select By ID  (0) 2022.10.13
[MEDIUM] Binary Tree Nodes  (0) 2022.10.12
[EASY] Select All  (0) 2022.10.12
[EASY] Revising the Select Query II  (0) 2022.10.11
[EASY] Revising the Select Query I  (0) 2022.10.11
Comments