PostgreSQL 왼쪽 가입

요약:이 튜토리얼에서,당신은 당신을 사용하는 방법을 배울 것입니다 PostgreSQLLEFT JOIN절을 선택하려면 여러 테이블에서 데이터.

PostgreSQL LEFT JOIN 절 소개

AB두 테이블이 있다고 가정합니다.,

테이블의 각 행은A도로 많은 해당 행에 표B동안 각 행에 표B 하나만 해당 행에 표A.

선택하려면 테이블에서 데이터는A지 않을 수 있는 해당 행에 표B를 사용하여LEFT JOINclause.,

다음 말씀을 보여줍LEFT JOIN구문을 결합하는 테이블A테이블과 함께B:

Code language: SQL (Structured Query Language) (sql)

하여 가입하세 표A테이블과 함께B테이블을 사용하여 왼쪽에 참으로 다음과 같은 단계를 수행합니다:

  • 첫 번째, 지정의 열 두 테이블에서 원하는 데이터를 선택하는SELECTclause.
  • 둘째,FROM절에서 왼쪽 테이블(tableA)을 지정합니다.,
  • 셋째,지정 오른쪽에 표(테이블의B)LEFT JOIN조항 및 조건 후ON키워드를 사용합니다.

LEFT JOIN절은 왼쪽 테이블에서 데이터 선택을 시작합니다. 각 행의 왼쪽 테이블에,그것은 값을 비교pka열의 값으로 각각의 행에는fka열이 올바른 표입니다.,

경우 이러한 값이 같은 왼쪽 가입 절 새 행을 만들이 포함된 열이 나타나는SELECT절 추가 이것을 행하는 결과를 설정합니다.

이러한 값이 동일하지 않은 경우 left join 절은SELECT절에 나타나는 열을 포함하는 새 행도 만듭니다. 또한 오른쪽 테이블에서 오는 열을 NULL 로 채 웁니다.,

다음과 같은 벤다이어그램을 설명하는 방법LEFT JOIN절 작동:

참고하는LEFT JOIN라고도 합LEFT OUTER JOIN.

PostgreSQL 왼쪽에 참 예

살펴보자는 다음filminventory테이블에서 샘플 데이터베이스입니다.,

각각의 행에는film테이블 제로나 많은 행inventory테이블. inventory테이블의 각 행에는film테이블에 하나의 행과 단 하나의 행이 있습니다.

film_id컬럼 설정하 사이의 링크를filminventory테이블이 있습니다.,

다음 문을 사용하는LEFT JOIN절을 참film테이블과 함께inventory테이블:

경우에서 행film테이블이 없에 일치하는 행inventory테이블 의 값inventory_id열의 이 행NULL.,

다음과 같은 문장을 추가WHERE절을 찾기 위해 영화는지에서 재고:

다음과 같은 문 같은 결과를 반환한다., 차이 사용하는 테이블 별칭을 쿼리 더 간결한다.

경우 테이블이 이 같은 열 이름을 사용하는ONclause, 사용할 수 있습니다USING다음과 같은 구문을 사용합니다.

이 기술을 사용할 때 유용하는 행을 선택에서 한 테이블이 없는 일치입니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다

도구 모음으로 건너뛰기