PostgreSQL/집합 연산자와 서브쿼리
PostgreSQL 실습문제2
DOGvelopers
2019. 11. 10. 16:55
반응형
실습문제
- SQL문은 EXCEPT 연산을 사용하여 재고가 없는 영화를 구하고 있습니다. 해당 SQL문은 EXCEPT연산을 사용하지 말고 같은 결과를 조회 하십시오.
문제 SQL
SELECT
FILM_ID,
TITLE
FROM
FILM
EXCEPT
SELECT
DISTINCT INVENTORY.FILM_ID,
TITLE
FROM
INVENTORY
INNER JOIN FILM ON
FILM.FILM_ID = INVENTORY.FILM_ID
ORDER BY
TITLE;
재고가 없는 영화를 조회합니다.
첫번째 방법
SELECT
A.FILM_ID,
A.TITLE
FROM
FILM A
WHERE
NOT EXISTS (
SELECT
1
FROM
INVENTORY B,
FILM C
WHERE
B.FILM_ID = C.FILM_ID
AND A.FILM_ID = C.FILM_ID )
두번째 방법
SELECT
A.FILM_ID,
A.TITLE
FROM
FILM A
WHERE NOT EXISTS (
SELECT 1
FROM INVENTORY B
WHERE 1=1
AND A.FILM_ID = B.FILM_ID
)
반응형