Oracle에서는 속성 구조에서 데이터를 찾는 데 "connect by"가 사용되며 구문은 "select * from table [start with Condition1] connect by [prior] id=parentid"입니다. 여기서 "start with 조건1"이 사용됩니다. 첫 번째 데이터 계층 1개 또는 루트 노드 데이터를 제한하려면 콘텐츠의 이 부분을 기반으로 데이터의 두 번째 계층을 검색합니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, Oracle 버전 12c, Dell G3 컴퓨터.
기본 구문
select * from table [start with condition1] connect by [prior] id=parentid
일반적으로 트리 구조에서 데이터를 찾는 데 사용됩니다.
조건 1로 시작은 데이터의 첫 번째 레이어 또는 루트 노드 데이터를 제한하는 데 사용됩니다. 이 부분의 데이터는 두 번째 수준의 데이터를 찾는 기초로 사용되며, 그 다음 두 번째 수준의 데이터를 사용하여 세 번째 수준의 데이터를 찾는 식으로 진행됩니다.
connect by [prior] id=parentid 이 부분은 Oracle이 데이터를 검색할 때 어떤 종류의 관계를 사용하는지 나타내는 데 사용됩니다. 예를 들어 두 번째 수준 데이터를 검색할 때 첫 번째 수준 데이터의 ID를 사용하여 일치시킵니다. 테이블의 데이터는 레코드의 parentid 필드와 일치합니다. 이 조건이 true인 경우 검색된 데이터는 두 번째 레이어 데이터가 됩니다. 마찬가지로 세 번째 레이어, 네 번째 레이어 등도 이러한 방식으로 일치됩니다.
레벨 키워드는 트리 구조의 레벨 번호를 나타냅니다. 첫 번째 레벨은 숫자 1이고 두 번째 레벨은 숫자 2이며 순서대로 증가합니다.
예는 다음과 같습니다.
select rownum from dual connect by rownum<=10;
SELECT TRUNC(SYSDATE - LEVEL) OC_DATE FROM DUAL CONNECT BY LEVEL <= 10
추천 튜토리얼: "Oracle Video Tutorial"
위 내용은 Oracle에서 Connect by를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!