EQUI - JOIN
1. EQUI-JOIN (ANSI 표준 JOIN 방식)
- 서로 다른 테이블을 결합할 때, 각 테이블의 컬럼 간에 같은 필드값이 있는 경우만 출력

- employees 테이블과 department 테이블을 join
SELECT 필드명
FORM 테이블명1 INNER JOIN 테이블명2
ON 테이블명1.필드명 = 테이블명2.필드명
WHERE 조건식
;

- department_id가 employees 테이블쪽 하나, departments 테이블쪽 하나로 2개가 표시된다.
- INNER JOIN()은 각 테이블에 존재하는 키값들의 교집합에 해당하는 값들만 출력한다.
- 따라서, 키값이 null값이라면 출력되지 않는다.

- JOIN() 된 테이블에서 컬럼을 SELECT() 할 경우, 그냥 컬럼명만 적으면 '정의가 애매하다'고 오류가 발생한다.

- 이렇게 어느 테이블에서 온 컬럼인지 명시해주어야 한다.
- 그럼 매번 이렇게 같은내용을 두번씩 작성해주어야 하는가?? 그렇다.
- 하지만 조금 더 쉽게 작성하는 방법이 있다. 아래에서 살펴보자.
2. JOIN() 간결하게 작성하기

- employees 테이블을 'a'로, departments를 'b'로 지정해놓으면, 조금 더 쉽게 작성할 수 있다.
- 주의 할 점은, 별칭을 붙일 때 AS를 사용하지 않는다는 것이다.
3. JOIN() 대신 콤마(' , ')를 사용 (Oracle - JOIN방식)

- INNER JOIN 대신 콤마를, ON대신 WHERE를 작성해도 동일한 결과가 나온다.
4. 추가로 필터링 할 경우

- 앞서 배운 두가지 방식에 따라 각각 WHERE, AND를 써서 필터링 할 수 있다.
22일차 인증!


'클래스 리뷰 > 22.05 빡공단 SQL 강의' 카테고리의 다른 글
빡공단 22기 도전기 - SQL 기타 JOIN (24일차) (0) | 2022.12.07 |
---|---|
빡공단 22기 도전기 - SQL OUTER JOIN (23일차) (0) | 2022.12.07 |
빡공단 22기 도전기 - SQL 공공데이터 실습 (21일차) (0) | 2022.12.07 |
빡공단 22기 도전기 - SQL 복합 함수 (20일차) (0) | 2022.11.30 |
빡공단 22기 도전기 - SQL 그룹함수3 (19일차) (0) | 2022.11.30 |
댓글