Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- MVC
- 일단_해보는거야
- Spring
- json
- jakarta.mail
- ajax
- Oracle
- Level 1
- 로그인과 장바구니 구현
- 세션
- jquery
- SESSION
- java
- 다중 카테고리 구현
- 프로그래머스
- 자바
- 스프링
- 인증코드로 비밀번호 변경 구현
- 이메일로 인증코드 전송 구현
- jsp
- 대분류/중분류/소분류
- js
- Spring MVC
- MySQL
- 고객센터 구현
- Sts
- 오라클
- 교보문고 따라하기
- jsp 프로젝트
- 코딩
Archives
감 잃지말고 개발하기
[프로그래머스] [Oracle] [Level 1] 어린 동물 찾기 본문
문제
ANIMAL_INS 테이블
Column name | Type | Nullable | Description |
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 문을 작성하는데, 결과는 아이디 순으로 조회해주시오.
이때, 젊은 동물은 INTAKE_CONDITION이 Aged가 아닌 경우를 뜻한다.
해결
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE UPPER(INTAKE_CONDITION) <> 'AGED'
ORDER BY ANIMAL_ID;
♣ 추가 설명 ♣
1. 비교 연산자 IN()을 쓰면 오답인 이유
SELECT ANIMAL_ID, NAME
FROM ANIMAL_INS
WHERE UPPER(INTAKE_CONDITION) IN ('NORMAL', 'INJURED', 'SICK')
ORDER BY ANIMAL_ID
결과로만 본다면 위 쿼리문과 해결 쿼리문의 조회결과는 동일하다.
하지만 위 쿼리문의 경우, 조건절에서 INTAKE_CONDITION이 NORMAL, INJURED, SICK 경우의 행만 조회되도록 명시하고 있다.
그러나 이는 내가 전체 데이터를 조회해봤을 때, INTAKE_CONDITION 값을 NORMAL, INJURED, SICK, AGED로만 보았기 때문에 이렇게 한정하여 조건을 만든 것이다.
즉, INTAKE_CONDITION 컬럼 값이 위 4개의 값 외에도 존재할 수 있기 때문에 위 쿼리문은 답이 될 수 없다.
'프로그래머스 > Oracle' 카테고리의 다른 글
[프로그래머스][Oracle][Level 3] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 (0) | 2024.01.30 |
---|---|
[프로그래머스] [Oracle] [Level 1] [INNER JOIN] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2023.03.13 |
[프로그래머스] [Oracle] [Level 1] 조건에 맞는 회원 수 구하기 (0) | 2023.03.01 |
[프로그래머스] [Oracle] [Level 1] [COUNT] [DISTINCT] [중복 제거하기] COUNT() 와 COUNT([DISTINCT] expr) 차이 이해하기 (0) | 2023.02.28 |
[프로그래머스] [Oracle] [Level 2] [GROUP BY] 진료과별 총 예약 횟수 출력하기 (0) | 2022.12.29 |
[프로그래머스] [GROUP BY] [Level 2] 성분으로 구분한 아이스크림 총 주문량 출력하기 (0) | 2022.12.27 |