프로그래머스/[프로그래머스 - ORACLE] Lv.1
[프로그래머스 - ORACLE] 없어진 기록 찾기
코딩하는 흰둥이
2023. 3. 21. 17:39

CREATE 문
CREATE TABLE ANIMAL_INS (
ANIMAL_ID VARCHAR2(100) NOT NULL PRIMARY KEY,
ANIMAL_TYPE VARCHAR2(100) NOT NULL,
DATETIME TIMESTAMP NOT NULL,
INTAKE_CONDITION VARCHAR2(100) NOT NULL,
NAME VARCHAR2(100) NULL,
SEX_UPON_INTAKE VARCHAR2(100) NOT NULL
)
CREATE TABLE ANIMAL_OUTS (
ANIMAL_ID VARCHAR2(100) NOT NULL ,
ANIMAL_TYPE VARCHAR2(100) NOT NULL,
DATETIME TIMESTAMP NOT NULL,
NAME VARCHAR2(100) NULL,
SEX_UPON_OUTCOME VARCHAR2(100) NOT NULL,
CONSTRAINT FK_ANIMAL_ID FOREIGN KEY(ANIMAL_ID) REFERENCES ANIMAL_INS(ANIMAL_ID)
)
- 내 풀이
SELECT
O.ANIMAL_ID,
O.NAME
FROM ANIMAL_INS I RIGHT JOIN ANIMAL_OUTS O
ON I.ANIMAL_ID=O.ANIMAL_ID
WHERE I.ANIMAL_ID IS NULL
ORDER BY O.ANIMAL_ID,O.NAME;
ANIMAL_INS에는 유실되었고 ANIMAL_OUT에는 남아 있기 때문에 RIGHT JOIN을 함