본문 바로가기

SQL Kit/SELECT

역순 정렬하기 [ 프로그래머스 | SQL Kit | Level 1 ]

1. 문제 목적

데이터를 특정 열의 역순으로 정렬하는 방법을 학습하는 데 목적이 있다. 결과 데이터를 내림차순(DESC)으로 정렬하는 SQL 사용법을 이해하고 실습하는 것을 목표로 한다.


2. 핵심 개념

2.1 SELECT 문

  • 정의: SELECT 문은 데이터베이스에서 데이터를 조회하는 데 사용된다.
SELECT 열이름1, 열이름2 FROM 테이블이름
  • 용도: 특정 열을 선택하거나 모든 열()을 조회할 수 있다.

2.2 ORDER BY 절

  • 정의: 결과 데이터를 지정된 열의 값에 따라 정렬하는 데 사용된다.
SELECT 열이름 FROM 테이블이름 ORDER BY 열이름 [ASC|DESC];
  • ASC(오름차순): 기본값으로, 작은 값에서 큰 값 순서로 정렬.
  • DESC(내림차순): 큰 값에서 작은 값 순서로 정렬.
  • 용도: 조회된 데이터를 특정 기준에 따라 정렬할 때 사용된다.

3. 문제 해결 절차

  1. 요구사항 분석:
    • ANIMAL_INS 테이블의 동물 이름(NAME)과 보호 시작일(DATETIME)을 조회해야 한다.
    • 결과는 ANIMAL_ID 열을 기준으로 **역순(내림차순)**으로 정렬해야 한다.
  2. 접근 방법:
    • 조회 대상 열(NAME, DATETIME)만 선택하여 SELECT 문에 나열.
    • 데이터를 내림차순으로 정렬해야 하므로 ORDER BY ANIMAL_ID DESC를 사용.
  3. SQL 문 작성 절차:
    • SELECT 문으로 NAME과 DATETIME 열을 조회.
    • ORDER BY 절을 이용해 ANIMAL_ID 기준으로 내림차순 정렬.

4. 코드 작성

-- ANIMAL_INS 테이블에서 NAME과 DATETIME 열을 조회
SELECT NAME, DATETIME
FROM ANIMAL_INS
-- ANIMAL_ID 열을 기준으로 내림차순 정렬
ORDER BY ANIMAL_ID DESC;

코드 설명:

  1. SELECT NAME, DATETIME: NAME(동물 이름)과 DATETIME(보호 시작일) 열만 선택하여 조회한다.
  2. FROM ANIMAL_INS: 데이터를 조회할 테이블로 ANIMAL_INS를 지정한다.
  3. ORDER BY ANIMAL_ID DESC: 데이터를 ANIMAL_ID 열 기준으로 내림차순 정렬한다.

5. 코드 분석

SELECT 문

  • SELECT NAME, DATETIME:NAME과 DATETIME만 조회하므로 불필요한 데이터를 제외하고 결과를 최적화할 수 있다.
  • 테이블에서 특정 열만 조회할 때 사용한다.

FROM 절

  • FROM ANIMAL_INS:이 테이블은 동물 보호소의 동물 정보를 담고 있다.
  • 데이터를 조회할 테이블을 명시한다.

ORDER BY 절

  • ORDER BY ANIMAL_ID DESC:내림차순 정렬은 큰 값부터 작은 값 순서로 데이터를 정렬한다.
  • DESC는 내림차순을 명시적으로 나타내며, 반대로 ASC는 오름차순을 나타낸다.
  • 결과 데이터를 ANIMAL_ID 기준으로 내림차순으로 정렬한다.