✔️ 조인
조인이란?
- 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법
- 한 데이터베이스 내의 여러 테이블의 레코드를 조합하여 하나의 열로 표현
- 관계형 데이터베이스의 구조적 특징으로 인해 정규화를 수행하면 의미 있는 데이터의 집합으로 테이블이 구성되고,
각 테이블끼리는 관계를 가지게 되므로 나누어진 각 테이블에 저장된 데이터를 효과적으로 검색하기 위해 조인을 사용 - 테이블을 연결하려면, 적어도 하나의 칼럼을 서로 공유하고 있어야 하므로 이를 이용하여 데이터 검색에 활용
- 조인의 종류로는 내부 조인, 외부 조인, 크로스 조인, 셀프 조인이 존재
- 조인을 사용할 때는 SQL 문장의 의미를 제대로 파악하고 명확한 조인 조건을 제공해야 함
또한 조인할 대상의 집합을 최소화하며 조인을 맺는 것이 효과적이며 인덱스를 활용하면 조인 연산 비용을 낮출 수 있음
내부 조인(INNER JOIN)
- INNER JOIN은 교집합으로, A와 B의 중복된 값을 보여줌
- 명시적 조인 표현과 암시적 조인 표현으로 2개의 다른 조인식 구문이 존재
- 동등비교(=)만을 사용할 경우 동등 조인, 동일한 컬럼명을 가진 테이블에서 모든 컬럼들을 비교하는 자연 조인도 존재
-- 명시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
INNER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP
-- 암시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, JOIN_TABLE B
WHERE A.NO_EMP = B.NO_EMP

외부 조인(OUTER JOIN)
- 외부 조인에는 LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN이 존재
- LEFT OUTER JOIN은 A의 값과 B의 중복된 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
LEFT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

- RIGHT OUTER JOIN은 A와 B의 값의 중복된 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
RIGHT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

- FULL OUTER JOIN은 합집합으로, A와 B 테이블의 모든 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
FULL OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

크로스 조인(CROSS JOIN)
- 모든 경우의 수를 전부 표현해주는 방식
- 명시적 조인 표현과 암시적 조인 표현으로 2개의 다른 조인식 구문이 존재
-- 명시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
CROSS JOIN JOIN_TABLE B
-- 암시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, JOIN_TABLE B

셀프 조인(SELT JOIN)
- 자기 자신과 자기 자신을 조인
- 하나의 테이블을 여러 번 복사해서 조인하는 것과 동일
- 자신이 갖고 있는 칼럼을 다양하게 변형시켜 활용할 때 자주 사용
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, EX_TABLE B

'Tech Interview > Database' 카테고리의 다른 글
[Database] 정규화 (0) | 2024.01.03 |
---|---|
[Database] 이상 (0) | 2024.01.02 |
[Database] 인덱스 (0) | 2023.12.30 |
[Database] 키 (0) | 2023.12.28 |
[Database] 데이터베이스 (0) | 2023.12.27 |
✔️ 조인
조인이란?
- 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법
- 한 데이터베이스 내의 여러 테이블의 레코드를 조합하여 하나의 열로 표현
- 관계형 데이터베이스의 구조적 특징으로 인해 정규화를 수행하면 의미 있는 데이터의 집합으로 테이블이 구성되고,
각 테이블끼리는 관계를 가지게 되므로 나누어진 각 테이블에 저장된 데이터를 효과적으로 검색하기 위해 조인을 사용 - 테이블을 연결하려면, 적어도 하나의 칼럼을 서로 공유하고 있어야 하므로 이를 이용하여 데이터 검색에 활용
- 조인의 종류로는 내부 조인, 외부 조인, 크로스 조인, 셀프 조인이 존재
- 조인을 사용할 때는 SQL 문장의 의미를 제대로 파악하고 명확한 조인 조건을 제공해야 함
또한 조인할 대상의 집합을 최소화하며 조인을 맺는 것이 효과적이며 인덱스를 활용하면 조인 연산 비용을 낮출 수 있음
내부 조인(INNER JOIN)
- INNER JOIN은 교집합으로, A와 B의 중복된 값을 보여줌
- 명시적 조인 표현과 암시적 조인 표현으로 2개의 다른 조인식 구문이 존재
- 동등비교(=)만을 사용할 경우 동등 조인, 동일한 컬럼명을 가진 테이블에서 모든 컬럼들을 비교하는 자연 조인도 존재
-- 명시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
INNER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP
-- 암시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, JOIN_TABLE B
WHERE A.NO_EMP = B.NO_EMP

외부 조인(OUTER JOIN)
- 외부 조인에는 LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL OUTER JOIN이 존재
- LEFT OUTER JOIN은 A의 값과 B의 중복된 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
LEFT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

- RIGHT OUTER JOIN은 A와 B의 값의 중복된 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
RIGHT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

- FULL OUTER JOIN은 합집합으로, A와 B 테이블의 모든 값을 보여줌
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
FULL OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

크로스 조인(CROSS JOIN)
- 모든 경우의 수를 전부 표현해주는 방식
- 명시적 조인 표현과 암시적 조인 표현으로 2개의 다른 조인식 구문이 존재
-- 명시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A
CROSS JOIN JOIN_TABLE B
-- 암시적 조인 표현 --
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, JOIN_TABLE B

셀프 조인(SELT JOIN)
- 자기 자신과 자기 자신을 조인
- 하나의 테이블을 여러 번 복사해서 조인하는 것과 동일
- 자신이 갖고 있는 칼럼을 다양하게 변형시켜 활용할 때 자주 사용
SELECT
A.NAME,
B.AGE
FROM EX_TABLE A, EX_TABLE B

'Tech Interview > Database' 카테고리의 다른 글
[Database] 정규화 (0) | 2024.01.03 |
---|---|
[Database] 이상 (0) | 2024.01.02 |
[Database] 인덱스 (0) | 2023.12.30 |
[Database] 키 (0) | 2023.12.28 |
[Database] 데이터베이스 (0) | 2023.12.27 |