문제


풀이 1
SELECT ANIMAL_ID, NAME
FROM ANIMAL_OUTS
WHERE ANIMAL_ID NOT IN (SELECT ANIMAL_ID FROM ANIMAL_INS)
WHERE 절 서브 쿼리를 사용한 풀이이다. 개인적으로 JOIN을 이용한 풀이보다 더 간단하다고 생각했다!
서브 쿼리(Subqueries)
- 서브 쿼리란 하나의 질의문 내부에 하나 이상의 다른 질의문이 포함되어 그 결과를 이용하거나, 그 결과와 연관된 자료를 출력하기 위해 사용하는 질의문을 의미한다.
- From 절에 사용되는 서브 쿼리를 인라인 뷰(inline View)라고 하며 Where 절에 사용되는 서브 쿼리를 중첩 서브 쿼리(Nested/Correlated Subquery)라고 한다.
풀이 2 (JOIN)
SELECT A.ANIMAL_ID, A.NAME
FROM ANIMAL_OUTS A
LEFT JOIN ANIMAL_INS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.ANIMAL_ID IS NULL
ORDER BY B.ANIMAL_ID
문제의 의도대로 JOIN 중 LEFTJOIN을 사용하여 푼 풀이이다.
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=pyj721aa&logNo=221466664622
[오라클/SQL] 서브쿼리 (WHERE절/FROM절/SELECT절)
서브쿼리(Subqueries) 쿼리 안에 있는 쿼리. WHERE 절/FROM 절/SELECT 절 안에 들어가는 ...
blog.naver.com
https://brightestbulb.tistory.com/153
서브쿼리(Subquery)
서브쿼리(SUBQUERY) 서브쿼리는 조인과 더불어 자주 사용되는 질의문 작성 방법이다( 서브쿼리와 조인은 성능상 비교대상이다.) 서브쿼리는 질의문의 여러부분에 사용되고 있으며 그 중 인라인 뷰
brightestbulb.tistory.com
'DataBase > SQL Queries' 카테고리의 다른 글
[프로그래머스] JOIN - 있었는데요 없었습니다 / USING (0) | 2022.03.25 |
---|---|
[프로그래머스] IS NULL, IS NOT NULL, IF NULL (0) | 2022.03.18 |
[프로그래머스] GROUP BY - 입양 시각 구하기(2) / 매 시간대별 통계, JOIN, IFNULL (0) | 2022.03.18 |
[프로그래머스] GROUP BY - 입양 시각 구하기(1) / 통계 유형별 조회, BETWEEN (0) | 2022.03.07 |
[프로그래머스]GROUP BY - 동명 동물 수 찾기 (0) | 2022.02.09 |