[SQL] SELECT 〉 Lv1. 여러 기준으로 정렬하기

l X·2021년 10월 2일

[프로그래머스]

목록 보기
6/6
post-thumbnail

문제 설명


예시


풀이 방법

이 문제의 핵심은 제목에 나와 있습니다. 여러 기준으로 '정렬'. 결국 ORDER BY가 중요한 문제인 듯싶습니다.
우선 예시 테이블의 칼럼과 같은 결과를 내기 위해 SELECT ANIMAL_ID, NAME, DATETIME 을 씁니다. 다음은 동물 보호소의 동물 정보 테이블 ANIMAL_INS에서 데이터를 가져오기 위해 FROM ANIMAL_INS 를 작성합니다. 이제 가장 중요한 정렬 부분으로 우선 이름 순으로 정렬을 하고 그중 같은 이름만 다른 정렬을 해야 하므로 NAME을 앞에 적는다. ORDER BY NAME ASC, DATETIME DESC 로 마무리를 합니다. 원래대로라면 ASC를 생략하나, 뒤에 나올 DATETIME의 내림차순과 같이 쓰일 수가 있기 때문에 ASC를 생략하지 않았습니다.


문제 풀이

#solution.sql
SELECT ANIMAL_ID, NAME, DATETIME
FROM ANIMAL_INS
ORDER BY NAME ASC, DATETIME DESC

실행 결과



실행결과 두번째 이미지의 위에서 두번째 같은 이름 'Lucy'가 세번 나옵니다. 이 때 보호 시작일(DATETIME)은 내림차순으로 정렬된 것을 볼 수 있습니다.

profile
취뽀시래기

0개의 댓글