본문 바로가기
DB/문제풀이

[프로그래머스] 여러 기준으로 정렬하기 -LV.1

by 쬑께께 2022. 12. 14.

여러 기준으로 정렬하기 문제는 다음과 같다.

이 문제를 풀기 위해선

1. 동물의 아이디, 이름, 보호 시작일을 출력

2-1. 동물의 이름을 오름차순으로 정렬하여 출력

2-2. 이름이 같을 경우 보호 시작일을 기준으로 내림차순 정렬 후 출력

의 순서를 거쳐야 한다.

 

 

 

우선 SELECT문을 통해 

동물의 아이디, 이름, 보호 시작일을 가져오겠다.

 

 

 

다음으로 ORDER BY문을 이용해 

동물의 이름을 기준으로

오름차순 정렬을 하겠다.

이때까지 오름차순 정렬을 요구한 문제를 풀 때

ASC라는 명령어를 명시하지 않았으나, 

이번 문제를 풀 때에는 

2-2 내용인 내림차순과 헷갈리지 않기 위해 써주었다.

 

 

앞서 포스팅했던 문제풀이에서 봤듯

ASC 명령어는 기본 옵션이기 때문에

따로 적지 않아도 자동으로 오름차순 정렬이 된다.

 

 

그러면 마지막으로 

내림차순 정렬 명령어인 DESC를 사용하여

같은 이름이 있을 경우, 보호 시작일을 기준으로

내림차순하여 정렬해보겠다.

 

 

실행시켜보면 다음과 같이

이름을 기준으로 오름차순 정렬이 되어 있으나,

이름이 같을 경우

보호 시작일을 기준으로

내림차순 정렬이 되어 있는 모습을 확인할 수 있다.

 

 

 

그러면 이제 적은 쿼리문이 정답인지 확인해보겠다.

정답이다.