ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
ANIMAL_INS 테이블에 등록된 모든 레코드에 대해, 각 동물의 아이디와 이름, 들어온 날짜를 조회하는 SQL문을 작성해주세요.
이때 결과는 아이디 순으로 조회해야 합니다.
날짜는 시각(시-분-초)을 제외한 날짜(년-월-일)만 보여주세요.
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
2) 예시
예를 들어 ANIMAL_INS 테이블이 다음과 같다면
ANIMAL_ID
ANIMAL_TYPE
DATETIME
INTAKE_CONDITION
NAME
SEX_UPON_INTAKE
A349996
Cat
2018-01-22 14:32:00
Normal
Sugar
Neutered Male
A350276
Cat
2017-08-13 13:50:00
Normal
Jewel
Spayed Female
A350375
Cat
2017-03-06 15:01:00
Normal
Meo
Neutered Male
A352555
Dog
2014-08-08 04:20:00
Normal
Harley
Spayed Female
A352713
Cat
2017-04-13 16:29:00
Normal
Gia
Spayed Female
SQL문을 실행하면 다음과 같이 나와야 합니다.
ANIMAL_ID
NAME
날짜
A349996
Sugar
2018-01-22
A350276
Jewel
2017-08-13
A350375
Meo
2017-03-06
A352555
Harley
2014-08-08
A352713
Gia
2017-04-13
3) 풀이
1. 테이블에서 동물아이디, 이름, 보호시작일을 조회합니다.
● SELECT ANIMAL_ID, NAME, DATETIME FROM ANIMAL INS
2. 동물 아이디 순으로 조회합니다.
● ORDER BY ANIMAL_ID
3. 보호시작을일 조회하되, 년-월-일만 보여주도록 해야합니다.
● DATE_FORMAT(DATETIME, '%Y-%m-%d'
네자리 연도, 두자리 월, 두자리 일로 출력되게합니다.
※ DATE_FORMAT
MySQL에서 날짜를 원하는 형식으로 포맷팅하는 데 사용되는 함수
형식
설명
예시
%Y
네 자리 연도
2023
%y
두 자리 연도
23
%M
월 이름의 전체 문자열
January
%m
두 자리 월
01 ~ 12
%d
두 자리 일
01 ~ 31
%H
두 자리 24시간 형식 시
00 ~ 23
%h
두 자리 12시간 형식 시
01 ~ 12
%i
두 자리 분
00 ~ 59
%s
두 자리 초
00 ~ 59
%p
AM 또는 PM
AM 또는 PM
4) 코드
SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') FROM ANIMAL_INS
ORDER BY ANIMAL_ID;