이진 관계 연산: 연결 및 나누기

王林
풀어 주다: 2023-09-11 18:53:02
앞으로
1118명이 탐색했습니다.

이진 관계 연산: 연결 및 나누기

데이터베이스 관리 시스템에서 여러 테이블의 데이터를 조인하고 검색하는 기능은 효과적인 데이터 구성 및 조작에 매우 중요합니다. JOIN 및 DIVISION 작업은 사용자가 지정된 조건에 따라 여러 테이블의 데이터를 결합하거나 나눌 수 있는 두 가지 이진 관계형 작업입니다. 이 기사에서는 구문, 유형, SQL 및 기타 프로그래밍 언어에서 사용하는 방법에 대한 예를 포함하여 JOIN 및 DIVISION 작업을 심층적으로 살펴보겠습니다.

JOIN 연산이란 무엇인가요?

JOIN 작업은 관련 열 또는 열 집합(키라고 함)을 기반으로 둘 이상의 테이블의 행을 결합합니다. 결과 테이블을 조인 테이블이라고 하며 원본 테이블의 모든 열을 포함하며, 각 행은 조인 조건을 충족하는 원본 테이블의 행 조합을 나타냅니다.

JOIN에는 다양한 유형이 있으며 각각 고유한 특성과 사용 사례가 있습니다. -

  • INNER JOIN - INNER JOIN은 조인 기준과 일치하는 두 테이블의 행을 결합합니다. 조건을 충족하는 행만 반환하고 나머지는 삭제합니다.

  • OUTER JOIN - OUTER JOIN은 조인 조건을 충족하지 않는 행을 포함하여 두 테이블의 모든 행을 결합합니다. OUTER JOIN에는 LEFT JOIN, RIGHT JOIN, FULL JOIN의 세 가지 유형이 있습니다.

  • LEFT JOIN - LEFT JOIN은 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 모든 행을 반환합니다. 일치하는 항목이 없으면 오른쪽 테이블의 열에 대해 NULL 값이 반환됩니다.

  • RIGHT JOIN - RIGHT JOIN은 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 모든 행을 반환합니다. 일치하는 항목이 없으면 왼쪽 테이블의 열에 대해 NULL 값이 반환됩니다.

  • FULL JOIN - FULL JOIN은 두 테이블의 모든 행과 일치하지 않는 행에 대해 NULL 값을 반환합니다.

JOIN 구문

JOIN 연산의 구문은 사용되는 프로그래밍 언어 및 데이터베이스 관리 시스템에 따라 다릅니다. 다음은 SQL의 JOIN 연산에 대한 일반적인 구문 예입니다. -

으아아아

이 예에서 SELECT 문은 table1과 table2의 모든 열을 검색하고, JOIN 절은 ON 키워드를 사용하여 조인할 테이블과 조인 조건을 지정합니다.

연결 예시

다음은 "customer_id" 열을 기반으로 "customers" 및 "orders" 테이블을 결합하는 SQL의 INNER JOIN 예입니다. -

으아아아

이 INNER JOIN은 "customers" 테이블의 모든 행과 "customers" 테이블의 "customer_id" 열이 "orders" 테이블의 "customer_id" 열과 일치하는 "orders" 테이블의 모든 행을 포함하는 테이블을 반환합니다.

다음은 "department_id" 열을 기반으로 "employees" 및 "departments" 테이블을 결합하는 SQL의 LEFT JOIN 예입니다. -

으아아아

이 LEFT JOIN은 "employees" 테이블의 모든 행과 "departments" 테이블의 모든 일치 행을 포함하는 테이블을 반환합니다. 일치하는 항목이 없으면 "부서" 테이블의 열에 대해 NULL 값이 반환됩니다.

분할운영이란?

DIVISION 연산은 지정된 조건에 따라 한 행 집합을 다른 행 집합으로 나누는 이진 관계 연산입니다. JOIN 연산과 유사하지만 결과 테이블에는 첫 번째 그룹에 속하고 분할 기준을 만족하는 행만 포함됩니다.

분할 구문

DIVISION 연산의 구문은 사용되는 프로그래밍 언어 및 데이터베이스 관리 시스템에 따라 다릅니다. 다음은 SQL의 DIVISION 연산에 대한 일반적인 구문 예입니다. -

으아아아

이 예에서 SELECT 문은 table1의 모든 열을 검색하고 WHERE 절은 EXISTS 키워드를 사용하여 table2에 나누기 조건을 만족하는 행이 있는지 확인합니다.

분할 예시

다음은 "customers" 테이블을 "customer_type" 열을 기준으로 두 개의 컬렉션으로 분할하는 SQL의 DIVISION 연산의 예입니다.

으아아아

이 DIVISION 연산은 "customers_id" 열을 기반으로 "orders" 테이블에 일치하는 행이 있는 "customers" 테이블의 모든 행을 포함하는 테이블을 반환합니다.

중요사항

JOIN 및 DIVISION 작업을 이해하는 데 도움이 될 수 있는 다른 주제는 다음과 같습니다. -

  • 자연 조인과 외부 조인 - 자연 조인은 이름이 같은 열을 기반으로 둘 이상의 테이블의 행을 결합하는 내부 조인입니다. 외부 조인은 조인 조건을 충족하지 않는 테이블 중 하나 또는 두 테이블의 행을 포함하는 모든 유형의 조인입니다.

  • Cartesian Product - Cartesian product는 조인 조건을 지정하지 않은 JOIN 연산의 결과입니다. 한 테이블의 각 행을 다른 테이블의 각 행과 결합하여 각 원본 테이블의 행 수를 곱한 것과 동일한 행 수의 테이블을 생성합니다.

  • Self-Join- 셀프 조인은 조인 조건에 따라 단일 테이블의 행을 결합하는 조인 유형입니다. 동일한 테이블의 행을 비교하거나 테이블에 계층을 생성하는 데 유용합니다.

  • SET OPERATOR - SET 연산자는 여러 SELECT 문의 결과를 단일 결과 집합으로 결합하는 데 사용됩니다. JOIN 및 DIVISION 작업과 함께 사용하여 여러 테이블의 데이터를 추가로 조작할 수 있습니다. 가장 일반적인 SET 연산자는 UNION, INTERSECT 및 MINUS입니다.

  • 인덱싱 - 인덱싱은 테이블의 행에 더 빠르게 액세스할 수 있는 별도의 데이터 구조를 만드는 프로세스입니다. 스캔하고 비교해야 하는 데이터의 양을 줄여 JOIN 및 DIVISION 작업의 성능을 향상시키는 데 사용할 수 있습니다.

결론

JOIN 및 DIVISION 작업은 데이터베이스 관리 시스템에서 여러 테이블의 데이터를 결합하고 나누는 데 중요한 도구입니다. 이러한 작업의 구문과 사용 사례를 이해하면 데이터베이스의 데이터를 효율적으로 검색하고 조작할 수 있습니다.

위 내용은 이진 관계 연산: 연결 및 나누기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!