SQL INNER JOIN 문은 두 테이블의 두 열에 정확한 값이 있는 행을 반환합니다. 하나 이상의 열에 걸쳐 테이블을 조인할 수 있습니다. JOIN 문은 두 개의 데이터베이스 테이블을 연결하고 그 내용을 비교합니다.
두 개 이상의 테이블에서 동시에 데이터를 가져와 결과를 결합하려는 경우가 있을 수 있습니다.
예를 들어, 제품 목록과 해당 제품을 공급한 공급업체의 이름을 얻을 수 있습니다. 제품 이름 및 공급업체 이름에 대한 정보는 두 개의 테이블에 있습니다.
SQL 조인이 들어옵니다. join을 사용하여 조건에 따라 여러 테이블의 정보를 하나의 결과 집합으로 결합할 수 있습니다. SQL INNER JOIN은 두 테이블의 열 값이 일치하는 레코드를 반환하는 조인 유형입니다. 이 튜토리얼에서는 INNER JOIN을 사용하는 방법에 대해 논의할 것입니다.
SQL 내부 조인
SQL INNER JOIN은 지정된 두 테이블에 나타나는 열 값이 있는 모든 레코드를 검색합니다. INNER JOIN 문은 ON 키워드를 사용하여 두 테이블의 데이터를 일치시킵니다.
내부 조인 SQL 조인의 가장 일반적인 유형입니다. . 연산자는 두 테이블 모두에서 일치하는 레코드를 반환합니다.
INNER JOIN 구문을 살펴보겠습니다. 키워드:
이름 선택
참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.
부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.
고객으로부터
INNER JOIN 계획
ON 고객.plan_id =계획.id;
이 쿼리는 "customers" 및 "plans" 테이블의 행을 결합합니다. "plan_id"가 "plan_id"와 동일한 "plan_id" 테이블의 모든 고객 목록을 반환합니다.
INNER JOIN 절을 사용하여 테이블을 조인합니다. ON 키워드는 우리가 조인하는 테이블 이름 뒤에 옵니다. ON 키워드 뒤에 쉼표로 구분하여 여러 조건을 지정할 수 있습니다.
INNER JOIN SQL 예제
현재 직원에 각 직원의 부서 ID를 저장하는 직원 데이터베이스가 있습니다. 테이블. SQL CREATE TABLE 문으로 이 테이블을 만들었습니다. 부서 이름은 company_departments라는 별도의 테이블에 저장됩니다. .
다음은 직원입니다. 표:
직원 | ||
---|---|---|
이름 | 제목 | 부서 ID |
루크 | 영업 사원 | 1 |
마이크 | 영업 사원 | 1 |
한나 | 영업 사원 | 1 |
제프 | 시니어 영업 직원 | 1 |
알렉시스 | 영업 사원 | 1 |
요나 | 영업 부사장 | 3 |
엠마 | 마케팅 이사 | 2 |
(7줄)
다음은 부서 테이블입니다:
회사_부서 | |
---|---|
부서 ID | 이름 |
1 | 판매 |
2 | 마케팅 |
3 | 임원 |
(3줄)
모든 직원의 이름, 직위, 부서 이름을 얻고 싶다고 가정해 봅시다. 이 데이터는 두 개의 테이블에 포함되어 있습니다. 직원 이름과 직위는 직원 테이블. 부서 이름은 company_departments에 있습니다. 표.
찾고 있는 정보는 어떻게 얻습니까?
직원 테이블에 department_id라는 열이 있습니다. . 이 열에는 각 직원이 근무하는 부서의 ID가 있습니다.
company_departments 테이블에서 각 부서에는 ID(테이블의 기본 키)도 있습니다. 이는 직원의 department_id와 일치시킬 수 있음을 의미합니다. 부서 목록과 함께. 그렇게 하면 해당 직원이 근무하는 부서의 이름을 알 수 있습니다.
직원의 이름, 직위, 근무하는 부서 이름을 검색하는 쿼리를 작성해 보겠습니다.
SELECT Employees.Name, Employees.Title, Company_Departments.Name FROM Employees INNER JOIN Company_Departments ON Employees.Department_ID = Company_Departments.Department_ID;
쿼리는 다음과 일치하는 행을 반환합니다.
이름 | 제목 | 이름 |
알렉시스 | 영업 사원 | 판매 |
제프 | 시니어 영업 직원 | 판매 |
한나 | 영업 사원 | 판매 |
마이크 | 영업 사원 | 판매 |
루크 | 영업 사원 | 판매 |
엠마 | 마케팅 이사 | 마케팅 |
요나 | 영업 부사장 | 임원 |
첫 번째 줄에서 데이터베이스에 직원으로부터 직원의 이름과 직위를 가져오도록 지시합니다. 테이블. company_departments에서 회사 부서의 이름도 검색합니다. 표.
두 번째 줄에서는 직원으로부터 직원 정보를 가져오도록 지정합니다. 테이블. 다음으로 INNER JOIN을 사용합니다. 직원을 연결하기 위해 company_departments가 있는 테이블 부서 이름이 포함된 표입니다.
마지막으로, 우리의 마지막 줄은 직원 및 회사_부서 공통 필드(이 경우 department_id)별로 함께 테이블 .
결론
SQL INNER JOIN 문은 두 테이블에서 일치하는 두 열 값이 있는 레코드를 검색합니다. ON 문을 사용하면 내부 조인이 실행되는 조건을 지정할 수 있습니다.
조인을 마스터하는 것은 SQL 쿼리의 중요한 부분입니다. 데이터베이스에 대한 이해를 바탕으로 SQL 전문가.
여러분과 같은 학습자가 SQL을 마스터할 수 있도록 SQL 학습 방법 가이드를 작성했습니다. 이 가이드에는 최고의 학습 리소스 및 과정 목록과 SQL 학습 방법에 대한 조언이 포함되어 있습니다. SQL 학습 방법 페이지에서 가이드를 확인하세요.