저희 서비스는 가게마다 웹에서 접속할 수 있는 어드민을 제공하는데, 프렌차이즈가 아닌 하나의 독립적인 가게들일 경우 정보를 가져와 나타내는 데는 굳이 CTE 를 쓸 필요가 없지만 프렌차이즈일 경우 본사와 지점들로 나누어져 있어서 본사와 지점들 정보를 다 가져오기 위해서 CTE 를 사용하게 되었습니다.
그럼 postgresql 의 CTEReadme 에 나와 있는 예제와 sqlalchemy core 로 변환하는 것까지 살펴보겠습니다.
아래 예제는 ‘A’부서 하위에 있는 부서만 추출하는 예제입니다.
일단 재귀 CTE를 이용한 쿼리를 사용하려면 ‘WITH RECURSIVE’ 키워드를 추가해야 합니다.
Table ‘department’ 인접 리스트로 조직 구조를 나타냅니다.
부서 구조:
A의 하위 부서를 추출, 다음과 같은 재귀 쿼리를 사용할 수 있습니다.
...스포카에서 쓰는 오픈소스와 오픈소스 라이센스 (1) (0) | 2020.05.04 |
---|---|
미드레이트 1호 발사! (0) | 2020.05.04 |
docker the cloud (0) | 2020.05.03 |
A/B Testing 도구인 Optimizely 사용법 (0) | 2020.05.03 |
RESTful API를 설계하기 위한 디자인 팁 (0) | 2020.05.03 |