[SQLD 자격증] 2과목 | JOIN, UNION, MINUS, 서브쿼리 설명 & 문제풀이

728x90
반응형

JOIN 개념 (UNION, MINUS)

 

 

  • 교집합
    • INNER JOIN
    • LEFT JOIN
    • RIGHT JOIN
    • OUTER JOIN
  • 합집합
    • UNION (ALL)
  • 차집합
    • MINUS (oracle) = EXCEPT (SQL Server)
  • 결합되는 대상간의 일치정도
    • EQUI 조인 ↔ non-EQUI 조인 
  • 조건구 없는 CROSS JOIN

 

EQUI JOIN, non-EQUI JOIN

  • EQUI JOIN
    동일한 컬럼을 사용하여 두 릴레이션을 결합
    ex. A.key = B.key

  • non - EQUI JOIN
    정확하게 일치하지 않는 컬럼들을 사용하여 두 릴레이션을 결합
    = 을 사용하지 않음.
    ex. A.key <, >, <=, >= B.key

 

CROSS JOIN - key없이 JOIN하면 2개의 테이블에 대해 카테시안 곱 발생

 

SubQuery 

1. 메인쿼리 vs. 서브쿼리

/* 메인쿼리 */
SELECT COUNT(*)
FROM 고객목록
WHERE 고객번호 NOT IN(SELECT 고객번호 FORM 연체자 목록); /* 서브쿼리 */

 

2. 이름있는 서브쿼리

  • FROM 구에 SELECT문이 있으면 >> 인라인뷰( Inline View )
    ex. FROM (SELECT * FROM 고객목록 WHERE 거주지 = ‘서울’) A JOIN 연락처 B ON A.고객번호 = B.고객번호
  • SELECT 문에 들어가고, 한 행과 한 컬럼만 반환하는 서브쿼리 >> 스칼라 Subquery
    ex. SELECT ( SELECT SUM( salary ) FROM 급여 WHERE EXTRACT( YEAR FROM 급여지급일) = 2021 ) …

 

3. 단일행 / 다중행 서브쿼리 (출력되는 행의 개수에 따라 정의)

SELECT COUNT(*)
FROM 고객목록
WHERE 고객번호 NOT IN (SELECT 고객번호 FROM 연체자목록) ; /* 다중행 서브쿼리 */
  • FROM (SELECT * FROM 고객목록 WHERE 거주지 = ‘서울’) A JOIN 연락처 B ON A.고객번호 = B.고객번호
  • SELECT ( SELECT SUM( salary ) FROM 급여 WHERE EXTRACT( YEAR FROM 급여지급일) = 2021 ) …
    • (SELECT SUM(salary)…)은 단일행 서브쿼리

 

문제

 

정답

 

문제

메인쿼리의 결과와 서브 쿼리의 결과가 모두 동일할 때 참이되는 다중행 연산자는?

 

정답

ALL

 


 

SQLD 목차 바로가기

SQLD 과목 목차 링크
1과목 
데이터 모델링의 이해

(10문항 출제)
데이터 모델링의 이해 데이터모델링의 이해, 엔터티, 속성
관계, 식별자
데이터 모델과 성능 성능 데이터 모델링, 정규화, 반정규화 설명 & 문제풀이
SQLD 2과목
SQL 기본및 활용

(40문항 출제)
SQL 기본 관계형 데이터베이스 개요 및 DCL(GRANT, REVOKE) 설명 & 문제풀이
DDL(CREAT, ALTER, DROP, RENAME, TRUNCATE) 설명 & 문제풀이
DML(INSERT, UPDATE, DELETE) 설명 & 문제풀이
TCL(ROLLBACK, SAVEPOINT, COMMIT) 설명 & 문제풀이
DML(SLELECT) 기본구조 설명 & 문제풀이
DML(SELECT) 함수(문자형, 숫자형, 날짜형, 형변환) 설명 & 문제풀이
DML(SELECT) DECODE, CASE WHEN, ORDER BY 설명 & 문제풀이
WHERE 절 연산자, 문자열 연산자, 임시테이블, VIEW 설명 & 문제풀이
NULL 함수, GROUP BY, HAVING, ROWNUM & ROWID 설명 & 문제풀이
SQL 활용 GROUP 함수 설명 & 문제풀이
JOIN, UNION, MINUS, 서브쿼리 설명 & 문제풀이
계층형 조회 설명 & 문제풀이
WINDOW 함수 전체 설명 & 문제풀이
SQL 최적화 기본원리 테이블 파티션, 옵티마이저, 인덱스 설명 & 문제풀이
옵티마이저 JOIN, PL-SQL, 분산 데이터베이스 설명 & 문제풀이

 

728x90
반응형

댓글