SQLD(SQL 개발자) 기출 · 집합 연산자

다음 중 SQL에서 실행 결과가 같은 것은?
본문)
(1)
SELECT A ID, B.ID
FROM MytestA  A FULL OUTER JOIN
MytestB B
ON  A.ID = B.ID

(2)
SELECT A ID, B.ID
FROM MytestA  A LEFT OUTER JOIN
MytestB B
ON  A.ID = B.ID
UNION
SELECT A ID, B.ID
FROM MytestA A RIGHT OUTER JOIN
MytestB B
ON  A.ID = B.ID

(3)
SELECT A ID, B.ID
FROM MytestA  A, MytestB B
WHERE  A.ID = B.ID
UNION ALL
SELECT A.ID, NULL FROM MytestA A
WHERE NOT EXISTS (SELECT 1 FROM 
MytestB B WHERE  A.ID = B.ID)
UNION ALL
SELECT NULL, B.ID 
FROM MytestB B
WHERE NOT EXISTS (SELECT 1 FROM 
MytestA A WHERE  B.ID = A.ID)

이 문제 풀어보기

정답 및 해설 보기

정답: 1번

보기 3개 모두 FULL OUTER JOIN과 동일한 결과를 반환한다. 즉, 교집합과 MytestA 및 MytestB의 차집합 모두가 조회된다.
이 단원 연속 풀기 · 집합 연산자개념서 「집합 연산자」 읽기

이 단원 공개 기출 48문항

  1. 다음의 "Mytest17" 테이블에서 아래의 SQL문을 수행한 결과로 알맞은 것은? [그림]집합 연산자
  2. 다음 주어진 테이블에 대해서 아래의 SQL문을 수행하였을 때의 결과로 알맞은 것은? [그림]집합 연산자
  3. SQL문의 집합 연산자에 대한 설명이다. 다음 중 INTERSECT로 올바른 것은?집합 연산자
  4. 다음 SQL의 실행 결과는?집합 연산자
  5. 다음 중 UNION구에 대한 설명으로 가장 올바른 것은?집합 연산자
집합 연산자 기출 전체 보기 →