재귀 결합

Recursive join

재귀 결합관계형 데이터베이스에서 사용되는 작업이며 "고정점 결합"이라고도 합니다.이것은 결합 조작을 반복하는 복합 조작입니다.일반적으로 매번 더 많은 레코드가 축적됩니다.반복으로 인해 결과가 변경되지 않을 때까지(이전 [1]반복 결과와 비교하여).

예를 들어, 가족 관계 데이터베이스를 검색해야 하고, 각 개인에 대한 레코드가 "어머니"와 "아버지" 필드를 가지고 있다면, 재귀적 결합은 한 개인의 알려진 모든 조상을 검색하는 한 가지 방법이 될 것입니다: 먼저 그 사람의 직계 부모의 기록을 검색한 다음, 부모의 정보는 조부모를 검색하기 위해 사용될 것입니다.새로운 레코드가 발견되지 않을 때까지의 레코드 등입니다.

이 예에서는 많은 실제 사례와 마찬가지로 반복에는 단일 데이터베이스 테이블만 포함되며, 보다 구체적으로는 "재귀적 셀프 조인"이 포함됩니다.

재귀 결합은 인덱싱, 추가 키 필드 추가 또는 기타 기술을 통해 최적화되지 않는 한 시간이 많이[2] 걸릴 수 있습니다.그래프 트래버설은 재귀 [3]결합 방식보다 비용이 저렴합니다.

재귀 결합은 계층 데이터의 특성이 매우 높기 때문에 XML 데이터에서는 심각한 문제가 됩니다.XML에서는 한 요소가 다른 요소를 포함하는지 여부를 확인하는 작업이 매우 일반적이며, XML 데이터가 관계형 데이터베이스에 저장될 때 재귀 결합이 이러한 요소를 구현하는 가장 명백한 방법입니다.

SQL:1999 표준에서 재귀 조인을 정의하는 표준 방법은 재귀 공통 테이블 식을 사용하는 것입니다.재귀 CTE를 지원하는 데이터베이스 관리 시스템에는 Microsoft SQL Server, Oracle, Postgre포함됩니다.SQL 및 기타

「 」를 참조해 주세요.

레퍼런스

  1. ^ Zygiaris, Sotirios (2018-08-23). Database Management Systems: A Business-Oriented Approach Using ORACLE, MySQL and MS Access. Emerald Group Publishing. p. 136. ISBN 978-1-78756-696-5.
  2. ^ Healey, Christopher G. (2016-11-17). Disk-Based Algorithms for Big Data. CRC Press. p. 127. ISBN 978-1-315-30286-7.
  3. ^ Resources, Management Association, Information (2016-04-20). Big Data: Concepts, Methodologies, Tools, and Applications: Concepts, Methodologies, Tools, and Applications. IGI Global. p. 596. ISBN 978-1-4666-9841-3.