본문 바로가기

DataBase/SQL Queries

[프로그래머스]JOIN - 없어진 기록 찾기 / LEFTJOIN, 서브쿼리(Subqueries)

문제

 

 

풀이 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