-
[SQL] 아픈 동물 찾기Programmers/SQL 2022. 8. 24. 16:17
문제
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 동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요.
SQL을 실행하면 다음과 같이 출력되어야 합니다.
ANIMAL_ID ANIMAL_TYPE DATETIME INTAKE_CONDITION NAME SEX_UPON_INTAKE A349996 Cat 2018-01-22 14:32:00 Normal Sugar A350276 Cat 2017-08-13 13:50:00 Normal Jewel A350375 Cat 2017-03-06 15:01:00 Normal Meo A352555 Dog 2014-08-08 04:20:00 Normal Harley ..이하 생략
Link
https://school.programmers.co.kr/learn/courses/30/lessons/59036
code
SELECT ANIMAL_ID,NAME from ANIMAL_INS where INTAKE_CONDITION = 'Sick' # [컬럼명] = 특정 조건 order by ANIMAL_ID
where 절 조건 표현식
1. 부등호 (=, >= <=, >, <, != , <>)
- 같다가 ==이 아님에 주의(=)
select * from ANIMAL_INS where INTAKE_CONDITION = 'Sick'
- not을 표현하는 방식이 2가지( !=, <>)
# 아프지 않은 동물 선택하기 SELECT * from ANIMAL_INS where INTAKE_CONDITION != 'Sick' SELECT * from ANIMAL_INS where INTAKE_CONDITION <> 'Sick'
2. BETWEEN
- 사이값 표현
# 특정 날짜 사이 조회 SELECT ANIMAL_ID,NAME,DATETIME from ANIMAL_INS where DATETIME BETWEEN '2014-08-26' AND '2017-01-08'
3. NOT
- 부정(-이 아닌)을 표현
# 특정 날짜 제외 조회 SELECT ANIMAL_ID,NAME,DATETIME from ANIMAL_INS where DATETIME NOT BETWEEN '2014-08-26' AND '2017-01-08' order by ANIMAL_ID
4. LIKE %
- 문자열 패턴 매칭
- %는 아무 기호 의미, 문자열 앞뒤로 모두 가능
SELECT * from ANIMAL_INS where INTAKE_CONDITION LIKE '%a%' # a가 포함되는 단어 조회 SELECT * from ANIMAL_INS where INTAKE_CONDITION LIKE 'a%' # a로 시작 되는 단어 조회 SELECT * from ANIMAL_INS where INTAKE_CONDITION LIKE '%a' # a로 끝나는 단어 조회
5. NOT LIKE
- 포함되지 않는 경우 조회
SELECT* from ANIMAL_INS where INTAKE_CONDITION NOT LIKE '%a%' # a가 포함되지 않은 단어 조회
'Programmers > SQL' 카테고리의 다른 글
[SQL] 상위 n개 레코드 (0) 2022.08.25 [SQL] 여러 기준으로 정렬하기 (0) 2022.08.25 [SQL] 어린 동물 찾기 (0) 2022.08.24 [SQL] 역순 정렬하기 (0) 2022.08.24 [SQL] 모든 레코드 조회하기 (0) 2022.08.24