Programmers/SQL
[mysql/oracle] 보호소에 중성화한 동물
Anoi
2023. 9. 4. 16:55
문제 설명


문제

결과

mysql / oracle
1
2
3
4
5
6
|
SELECT A.ANIMAL_ID, A.ANIMAL_TYPE, A.NAME
FROM ANIMAL_INS A, ANIMAL_OUTS B
WHERE A.ANIMAL_ID = B.ANIMAL_ID
AND A.SEX_UPON_INTAKE LIKE 'Intact%'
AND (B.SEX_UPON_OUTCOME LIKE 'Neutered%'OR B.SEX_UPON_OUTCOME LIKE 'Spayed%')
ORDER BY A.ANIMAL_ID
|
cs |
중성화를 거치지 않은 동물 → 성별 및 중성화 여부 : Intact
중성화를 거친 동물 → 성별 및 중성화 여부 : Neutered / Spayed
보호소에 들어올 당시에는 Intact
A.SEX_UPON_INTAKE LIKE 'Intact%'
보호소를 나갈 때에는 Neuterd / Spayed 인 동물을 골라야 한다.
(B.SEX_UPON_OUTCOME LIKE 'Neutered%'OR B.SEX_UPON_OUTCOME LIKE 'Spayed%')
괄호로 묶어서 하나의 조건 안에 집어넣는다.
들어올 때 Intact이면서 나갈 때 Neutered인 동물들
+ 들어올 때 Intact이면서 나갈 때 Spayed인 동물들
로 처리한다.
만약 괄호로 묶지 않는다면
들어올 때 Intact인 동물들
들어올 때 Intact이면서 나갈 때 Neutered인 동물들
+ 들어올 때는 뭐든 상관 없고 나갈 때 Spayed인 동물들
이 나온다.