3つ以上の結合(JOIN)
-- SQL 1992 CODE VERSION
SELECT 테이블명1.컬럼명, 테이블명2.컬럼명, 테이블명3.컬럼명
FROM 테이블명1, 테이블명2, 테이블명3
WHERE 테이블명1.컬럼명1 = 테이블명2.컬럼명1
AND 테이블명2.컬럼명2 = 테이블명3.컬럼명2;
-- SQL 1999 CODE VERSION
SELECT 테이블명1.컬럼명, 테이블명2.컬럼명, 테이블명3.컬럼명
FROM 테이블명1 JOIN 테이블명2
ON 테이블명1.컬럼명1 = 테이블명2.컬럼명1
JOIN 테이블명3
ON 테이블명2.컬럼명2 = 테이블명3.컬럼명2;
実習--※ HR.JOBS, HR.EMPLOYEES, HR.DEPARTMENTS 테이블을 대상으로 직원들의 데이터를
-- FIRST_NAME, LAST_NAME, JOB_TITLE, DEPARTMENT_NAME 항목으로 조회한다.
/* | | | |
EMPLYEES EMPLOYEES JOBS DEPARTMENTS
*/
SELECT E.FIRST_NAME, E.LAST_NAME, JOB_TITLE, D.DEPARTMENT_NAME
FROM EMPLOYEES E LEFT JOIN DEPARTMENTS D
ON E.DEPARTMENT_ID = D.DEPARTMENT_ID
JOIN JOBS J
ON E.JOB_ID = J.JOB_ID;
-- EMPLOYEES, DEPARTMENTS, JOBS, LOCATIONS, COUNTRIES, REGIONS 테이블을 대상으로
-- 직원들의 데이터를 다음과 같이 조회할수 있도록 쿼리문을 구성한다.
-- FIRST_NAME, LAST_NAME, JOB_TITLE, DEPARTMENT_NAME, CITY, COUNTRY_NAME, REGION_NAME
/*
EMPLOYEES EMPLOYEES JOBS DEPARTMENTS LOCATIONS COUNTRIES REGIONS
*/
SELECT E.FIRST_NAME, E.LAST_NAME, J.JOB_TITLE, D.DEPARTMENT_NAME, L.CITY, C.COUNTRY_NAME, R.REGION_NAME
FROM EMPLOYEES E LEFT JOIN DEPARTMENTS D
ON E.DEPARTMENT_ID = D.DEPARTMENT_ID
LEFT JOIN LOCATIONS L
ON D.LOCATION_ID = L.LOCATION_ID
LEFT JOIN JOBS J
ON E.JOB_ID = J.JOB_ID
LEFT JOIN COUNTRIES C
ON L.COUNTRY_ID = C.COUNTRY_ID
LEFT JOIN REGIONS R
ON C.REGION_ID = R.REGION_ID
ORDER BY 1;
Reference
この問題について(3つ以上の結合(JOIN)), 我々は、より多くの情報をここで見つけました https://velog.io/@cseon230/세-개-이상의-조인JOINテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol