본문 바로가기

카테고리 없음

oracle, postgresql 계층형 쿼리 참고 링크

반응형

1. 오라클

www.gurubee.net/lecture/1300

 

계층구조 쿼리(Hierarchical Queries)란?

계층구조 쿼리란? 오라클 데이터베이스 scott 유저의 emp 테이블을 보면 empno와 mgr컬럼이 있으며, mgr 컬럼 데이터는 해당 사원의 관리자의 empno..

www.gurubee.net

coding-factory.tistory.com/461

 

[Oracle] 오라클 계층형 쿼리(START WITH.. CONNECT BY)

계층형 쿼리란? 계층형 구조는 상하 수직관계의 트리형태의 구조로 이루어진 형태를 말합니다. 예를 들자면 특정회사의 부서, 특정학교의 학과등이 있습니다. 계층형 쿼리는 테이블에 저장된

coding-factory.tistory.com

jeaha.dev/54

루트 찾기 포함

 

[SQL] 계층 쿼리

계층형 쿼리 개발을 하다보면 메뉴구성, 조직도 등 같은 테이블 내에서 계층적으로 데이터를 처리해야 하는 경우가 많다. 자주 사용 되기도 하고, 이번 프로젝트에서 이 부분에 대한 삽질을 많

jeaha.dev

 

 

2. postgresql

m.blog.naver.com/wiseyoun07/221135850258

happy1week.blogspot.com/2012/07/postgresql_19.html

 

PostgreSQL 계층형 쿼리 따라하기

PostgreSQL에서는 오라클에서 계층형 쿼리라고 표현하는 start with, connect by 구문을 지원하지 않는다. 따라서 PostgreSQL에서 데이터를 계층형의 트리 구조로 표현하기 위해 RECURSIVE 키워드를 사용하여

happy1week.blogspot.com

 

wrkbr.tistory.com/319

 

[PostgreSQL] WITH RECURSIVE 계층 쿼리

*  WITH RECURSIVE 계층 쿼리 : 오라클에서 계층형쿼리라고 표현하는 start width, connect by 구문 대신 RECURSIVE 키워드를 사용하여 재귀적인 쿼리문을 작성 1 2 3 4 5 6 7 8 9 WITH RECURSIVE t(n) AS (..

wrkbr.tistory.com

[PostgreSQL] WITH RECURSIVE 계층 쿼리

2년 전 by Wrkbr zcarc

*

 WITH RECURSIVE 계층 쿼리

 

: 오라클에서 계층형쿼리라고 표현하는 start width, connect by 구문 대신 

RECURSIVE 키워드를 사용하여 재귀적인 쿼리문을 작성

 

WITH RECURSIVE t(n) AS (

    -- initial query

    SELECT 1

  UNION ALL

    -- recursive query

    SELECT n+1 FROM t

)

-- parent query(or outer query)

SELECT n FROM t LIMIT 100;


: 처음에 한번 실행하는 initial query와 그 후에 계속 반복적으로 도는 recursive query가 있음

나온 결과를 합쳐서 다음에 오늘 parent query에 넘겨주게 됨

 

: WITH RECURSIVE 결과 = initial query 결과 

UNION ALL recursive query 1 UNION ALL recursive query 2 UNION ALL recursive query 3

 

: WITH구문의 첫 번째 SELECT 문장은 오라클 계층형 쿼리의 START WITH에 해당 -> 데이터 ROOT를 구하는 부분

UNION ALL 다음의 SELECT문은 하위 데이터를 찾아가기 위한 반복 구문

[출처] [PostgreSQL] WITH RECURSIVE 계층 쿼리|작성자 dmswn11kr

 

 

같은 레벨 정렬

dbfactory.tistory.com/entry/PostgreSQL-CTE%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EC%9E%AC%EA%B7%80%EC%BF%BC%EB%A6%AC%EB%A5%BC-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B4%EC%9E%90-2-Order-Siblings-By-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0

 

[PostgreSQL] CTE를 이용해서 재귀쿼리를 만들어보자 #2- Order Siblings By 구현하기

오라클은 Connect by 사용시 Order Siblings By 절을 제공함으로써, 트리 구조 내에서 Sibling (같은 레벨의 노드)들을 정렬하는 기능을 제공한다. 그렇다면 PostgreSQL에서는 이를 어떻게 구현하는지 살펴보

dbfactory.tistory.com

루트 찾기

dbfactory.tistory.com/entry/PostgreSQL-CTE%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EC%9E%AC%EA%B7%80%EC%BF%BC%EB%A6%AC%EB%A5%BC-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B4%EC%9E%90-4-CONNECTBYROOT-%EA%B5%AC%ED%98%84%ED%95%98%EA%B8%B0?category=689494

반응형