ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다.
ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는
각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다.
ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다.
ANIMAL_OUTS 테이블의 ANIMAL_ID는 ANIMAL_INS의 ANIMAL_ID의 외래 키입니다.
--> on animal_outs.animal_id = animal_ins.animal_id
--> animal_outs에서 allie와 spice의 데이터를 뽑아내면 되는 거다
--> 주인공쪽으로 방향을 잡아서 outer조인해준다
--> 여기서 주인공은 animal_outs이다
--> 그럼 animal_outs left outer join animal_ins 라고 지정해 주면 된다
--> animal_outs.animal_id 와 animal_ins.animal_id 가 외래키이니까 동일하게 가지고 있을건데
--> animal_ins쪽에서 빈 값이고 animal_outs쪽에는 있는 값을 가지고 오면 된다
주인공은 animal_outs
select animal_outs.animal_id, animal_outs.name
from animal_outs left outer join animal_ins
on animal_outs.animal_id = animal_ins.animal_id
where animal_ins.animal_id is null
order by animal_outs.animal_id;
--> 결론은 animal_outs에서 값을 가져와야 하기 떄문에 animal_outs left join animal_ins 를 사용해서 포커스를 outs에 맞춤
--> 그리고 animal_outs.animal_id와 animal_ins.animal_id가 외래키인 것을 이용해서
--> animal_ins.animal_id가 null값은 것을 animal_outs.animal_id에서 찾아서 가지고 오는 것이다