본문 바로가기
Language/DB

[Programmers | SQL| SELECT 문제 풀이] 역순 정렬하기 - Solution with ORDER BY DESC

by ㅇ달빛천사ㅇ 2024. 5. 29.
728x90

KDT 실무형 스프링 백엔드 엔지니어 양성과정 6기 | SQL 코드카타

📉 역순 정렬하기

🏷 Topic : SELECT ORDER BY DESC 조회 정렬 역순



문제 설명

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다.
ANIMAL_INS 테이블 구조는 다음과 같으며,
ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE
각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.


NAME TYPE NULLABLE
ANIMAL_ID VARCHAR(N) FALSE
ANIMAL_TYPE VARCHAR(N) FALSE
DATETIME DATETIME FALSE
INTAKE_CONDITION VARCHAR(N) FALSE
NAME VARCHAR(N) TRUE
SEX_UPON_INTAKE VARCHAR(N) FALSE

동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요.
이때 결과는 ANIMAL_ID 역순으로 보여주세요.
SQL을 실행하면 다음과 같이 출력되어야 합니다.


NAME DATETIME
Rocky 2016-06-07 09:17:00
Shelly 2015-01-29 15:01:00
Benji 2016-04-19 13:28:00
Jackie 2016-01-03 16:25:00
*Sam 2016-03-13 11:17:00
SEX_UPON_INTAKE VARCHAR(N)

..이하 생략


본 문제는 Kaggle의 "Austin Animal Center Shelter Intakes and Outcomes"에서 제공하는 데이터를 사용하였으며 ODbL의 적용을 받습니다.


✔ (Oracle & MySQL) Solution with ORDER BY DESC

SELECT NAME
       , DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
실행 결과

 



💥 어떤 만난 문제 &  어떤 시도를 했는지💦 & 어떻게 해결했는지👍

📌 오늘 만난 문제 : 동물 보호소에 들어온 모든 동물의 이름보호 시작일을 조회하는 SQL문을 작성해주세요.
이때 결과는 ANIMAL_ID 역순으로 보여주세요.


1. ANIMAL_ID, 동물의 이름, 보호 시작일을 조회하자.

SELECT ANIMAL_ID
       , NAME
       , DATETIME
FROM ANIMAL_INS;
실행 결과

ANIMAL_ID칼럼을 보면 오름차순 정렬이 되어 있는 것을 확인할 수 있다.


ORDER BY 칼럼명 DESC`에서 역순의 철자가 헷갈렸었는데
오름차순 정렬은 ASC
내림차순 정렬은 DESC이다.

2. ANIMAL_ID칼럼으로 역순으로 정렬해서 조회하자.

SELECT ANIMAL_ID
       , NAME
       , DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
실행 결과

ANIMAL_ID칼럼이 역순으로 정렬이 잘 된 것을 확인할 수 있다.


3. 위의 조회 결과에서 동물 이름과 보호 시작일만 조회되도록 SELECT절에 NAME, DATETIME칼럼만 쓰자.

SELECT NAME
       , DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
실행 결과

ANIMAL_ID칼럼이 빠지고 NAME, DATETIME칼럼만 잘 조회된 것을 확인할 수 있다..


💬 무엇을 새롭게 알았는지

SQL문

  • 데이터 조회 QUERY
    SELECT 속성명1, 속성명2, ... FROM 테이블명;
  • 데이터 정렬해서 조회 QUERY
    • 오름차순(기본)
      SELECT 속성명1, 속성명2, ... FROM 테이블명 ORDER BY 속성명 ASC;
      ASC 생략 가능
    • 내림차순
      SELECT 속성명1, 속성명2, ... FROM 테이블명 ORDER BY 속성명 DESC;
728x90


Top