Recent Posts
목록2025/08/20 (2)
zimslog
[SQL] 프로그래머스 - 멸종위기의 대장균 찾기
프로그래머스 - 멸종위기의 대장균 찾기 처음 정답 코드)WITH RECURSIVE ED AS ( -- 정적 CTE 선언 가능 SELECT ID, PARENT_ID FROM ECOLI_DATA ), -- 동적 CTE 선언 R AS ( -- 1세대 먼저 넣고 SELECT ID, PARENT_ID, 1 AS gen FROM ED WHERE PARENT_ID IS NULL UNION ALL -- 1세대에 조인으로 자식 붙여서 2세대 -- 2세대에 조인으로 자식 붙여서 3세대 -- ... -- 조인할 게 없으면 자동으로 멈추네 SELECT C.ID, C.PARENT_ID, gen+1 FROM R P -- 여기서 R은 직전에서 추가된 ..
Data Engineering/SQL
2025. 8. 20. 14:32
[SQL] 재귀적 CTE - WITH RECURSIVE AS
재귀적 CTE - WITH RECURSIVE AS WITH CTE는 정적 테이블을 만들고,WITH RECURSIVE CTE는 동적 테이블을 만든다. (자기 자신을 호출하면서 데이터 만듬) 기본 구문)WITH RECURSIVE cte AS ( SELECT 1 AS n -- 가장 첫번째 행 정의, 한번만 실행 UNION ALL SELECT n+1 FROM cte -- 두번째부터 마지막 행까지 정의 WHERE n SELECT 문에서 컬럼명 명시하지 않고, 테이블명(컬럼명)으로 지정해주어도 됨. 위 쿼리와 같은 결과WITH RECURSIVE cte(n) AS ( SELECT 1 UNION ALL SELECT n+1 FROM cte WHERE n 피보나치 수열) 첫째, 둘째 항..
Data Engineering/SQL
2025. 8. 20. 13:08