[Certification]/[SQLD] Structured Query Language Develop

[SQLD] 4-1. SQL 활용 - 표준 조인, Standard SQL, Inner Join, Natural Join, Using Join, Cross Join, Outer Join

starterr 2024. 9. 12. 14:00
반응형

A. STANDARD SQL 개요

1. 관계형 데이터베이스를 유일하게 접속할 수 있는 언어가 SQL
2. 벤더별로 일부 기능의 개발이 진행 중인 경우도 있고 벤더별로 특이한 기술 용어는 여전히 호환이 안 되고 있음
3. ANSI/ISO SQL 표준을 통해 STANDARD JOIN을 포함한 많은 기능이 상호 벤치마킹하면서 DBMS 간 평준화됨

 

 

B. ANSI/ISO 표준 SQL의 기능

 

1. STANDARD JOIN 기능 추가 (CROSS, OUTER JOIN 둥 새로운 FROM 절 JOIN 기능)
2. SCALAR SUBQUERY, TOP-N QUERY 둥의 새로운 SUBQUERY 기능
3. ROLLUP, CUBE, GROUPING SETS 등의 새로운 리포팅 기능
4. WINDOW FUNCTION 같은 새로운 개념의 분석 기능

 

 

반응형

C. 일반 집합 연산자와 SQL 비교

 

1. 일반 집합 연산자 UNION은 SQL의 UNION
2. 일반 집합 연산자 INTERSECTION은 SQL의 INTERSECT
3. 일반 집합 연산자 DIFFERENCE은 SQL의 EXCEPT(Oracle은 MINUS)
4. 일반 집합 연산자 PRODUCT은 SQL의 CROSS JOIN

 

 

D. 순수 관계 연산자와 현재 SQL

 

1. 순수 관계연산자 SELECT 연산은 SQL의 WHERE 절
2. 순수 관계연산자 PROJECT 연산은 SQL의 SELECT 절
3. 순수 관계연산자 (NATURAL) JOIN 연산은 SQL의 JOIN
4. 순수 관계연산자 DIVIDE 연산은 현재 사용되지 않음

 

 

E. ANSI/ISO SQL에서 제시한 JOIN 형태

 

1. INNER JOIN , NATURAL JOIN , USING 조건절, ON 조건절, CROSS JOIN , OUTER JOIN
2. NATURAL JOIN은 INNER JOIN의 하위 개념
3. WHERE 절의 JOIN 조건을 FROM 절의 ON 조건절로 분리하여 표시

 

 

【INNER JOIN】


1. JOIN 조건에서 동일한 값이 있는 행만 반환
2. USING 조건절이나 ON 조건절을 필수적으로 사용

INNER JOIN
INNER JOIN

 

【NATURAL JOIN】


1. 동일한 이름의 모든 칼럼을 EQUI(=) JOIN
2. USING 조건절, ON 조건절, WHERE 절에서 JOIN 조건을 지정할 수 없음
3. JOIN에 사용된 칼럼들은 같은 데이터 유형
4. ALIAS나 테이블 명과 같은 접두사를 붙일 수 없음
5. JOIN에 사용된 같은 이름의 칼럼을 하나로 처리
6. SQL Server에 없는 기능

 

 

반응형

【USING 조인절】


1. 원하는 칼럼끼리 조인 가능
2. SQL Server에서는 지원하지 않음
3. USING 절에 기술된 컬럼이 먼저 출력

USING 조인절
USING 조인절

 

 

【ON 조건절】


1. JOIN 조건과 비JOIN 조건 분리
2. 칼럼명이 일치하지 않아도 JOIN 칼럼으로 사용 가능
3. JOIN 조건절에 테이블 ALIAS나 테이블명 사용 가능
4. SELECT 절에 사용된 칼럼명을 명확하게 지정해야 함
5. ON 조건절은 WHERE 절의 JOIN 조건과 동일한 기능

ON 조건절
ON 조건절

 

【CROSS JOIN】


1. 일반 집합 연산자의 PRODUCT의 개념
2. 생길 수 있는 모든 데이터의 조합
3. CARTESIAN PRODUCT 또는 CROSS PRODUCT와 같은 표현
4. M*N 건의 데이터 조합이 발생
5. 일반적으로 잘 사용되지 않는 JOIN
6. 데이터웨어하우스에서 개별 DEMENTION을 FACT 칼럼과 조인 전 DEMENTION 테이블끼리 CROSS JOIN

 

 

【OUTER JOIN】


1. JOIN 조건에서 동일한 값이 없는 행도 반환할 때 사용
2. USING 조건절이나 ON 조건절을 필수적으로 사용
3. LEFT/RIGHT OUTER JOIN의 경우에는 기준이 되는 테이블이 조인 수행 시 무조건 드라이빙 테이블

 

 

【(+) 키워드 사용한 OUTER JOIN】


1. JOIN 조건에서 동일한 값이 없는 행도 반환할 때 사용
2. Oracle은 JOIN 칼럼 뒤에 ‘(+)’ 를 표시
3. Sybase는 비교 연산자의 앞이나 뒤에 ‘(+)’ 를 표시
4. IN이나 OR 연산자 사용시 에러 발생
5. ‘(+)’ 표시가 누락된 칼럼 존재 시 OUTER JOIN 오류 발생
6. FULL OUTER JOIN 미지원

 

반응형

 

【FULL OUTER JOIN】


1. 좌측, 우측 테이블의 모든 데이터를 읽어 JOIN 하여 결과를 생성
2. RIGHT OUTER JOIN과 LEFT OUTER JOIN의 결과로 중복 데이터를 삭제한 합집합
3. OUTER 키워드를 생략하여 FULL JOIN으로 사용 가능

 


 

[SQLD] 3-9. SQL 기본 - 조인(JOIN), EQUI JOIN, JOIN 구문 주의 사항

 

[SQLD] 3-9. SQL 기본 - 조인(JOIN), EQUI JOIN, JOIN 구문 주의 사항

A. 조인(JOIN)이란? 1. 두 개 이상의 테이블 들을 연결 또는 결합하여 데이터를 출력하는 것 2. 관계형 데이터 베이스의 가장 큰 장점이며 대표적인 핵심 기능 3. 일반적인 경우 행들은 PK나 FK 값의

infoofit.tistory.com

 

[용어/개념] ISO27701 인증 제도 - 개인 정보 보호 경영 시스템

 

[용어/개념] ISO27701 인증 제도 - 개인 정보 보호 경영 시스템

ISO 27701이란? Privacy Information Management System ISO/IEC 27701:2019는 ISO 27001로 확장된 데이터 프라이버시입니다. 이 새로 발표된 정보 보안 표준은 GDPR 및 기타 데이터 프라이버시 요구 사항 준수를 지원

infoofit.tistory.com

 

[Algorithm] 이진 탐색 (Binary Search)

 

[Algorithm] 이진 탐색 (Binary Search)

개념정렬된 데이터 집합에서 탐색 범위를 1/2씩 줄여 나가면서 수행하는 방식 I. 이진 탐색 (Binary Search)의 개요 가. 이진 탐색의 정의- 정렬된 데이터 집합에서 탐색 범위를 1/2씩 줄여 나가면서

infoofit.tistory.com

 

[피어슨뷰/AWS] 자격증 시험 (온라인/오프라인) 예약하기

 

[피어슨뷰/AWS] 자격증 시험 (온라인/오프라인) 예약하기

1. 피어슨뷰 예약하기 AWS 자격증 시험을 보기 위한 사람이라면 이 글을 따라 하면 된다. 먼저, 아래의 링크에 방문하여 시험 예약 버튼을 클릭한다. https://aws.amazon.com/ko/certification/certification-prep

infoofit.tistory.com

 

 

반응형