ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 ANIMAL_ID 역순으로 보여주세요. SQL을 실행하면 다음과 같이 출력되어야 합니다.
SELECT NAME, DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
SQL문을 작성할 때는 무엇을 가져올 것인지 먼저 확인
이 경우 이름[NAME] 보호 시작일[DATE]를 가져와야하니
SELECT문으로 가져오고, ANIMAL_INS
에서 가져오니까 FROM
그리고 ORDER BY
로 열 정렬 여기는 역순이니 DESC
다른 분들 풀이 찾아보니 DB별로 정답이 다른 듯 하다.
SELECT NAME, DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
ANIMAL_ID;
SELECT NAME, DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC;
order by 칼럼명 형태로 제공이 됩니다.
특정 칼럼을 기준으로 테이블을 정렬하겠다는 뜻입니다.
SELECT 문을 사용할 때 출력되는 결과물은 테이블에 입력된 순서대로 출력되는 것이 기본입니다. 하지만 내림차순으로 혹은 오름차순으로 정렬된 데이터들이 필요할 때가 있습니다. 이때 사용하는 것이 ORDER BY 절 입니다.
ORDER BY 절은 항상 SELECT 문의 맨 마지막에 위치합니다.
1) 오름차순 (asc)
order by 칼럼명 (asc)
asc는 오름차순을 의미하며 쓰지 않더라도 묵시적으로 asc로 정의됩니다.
2) 내림차순 desc
order by 칼럼명 desc
내림차순은 기본의 역순이므로 명시적 표현만 가능합니다.