집 >데이터 베이스 >MySQL 튜토리얼 >단일 SQL 쿼리에서 재귀 CTE를 포함한 여러 CTE를 결합하려면 어떻게 해야 합니까?
단일 SQL 쿼리에서 여러 CTE 결합
뒤에 WITH 키워드를 사용하면 단일 쿼리에서 여러 CTE를 결합할 수 있습니다. 각 CTE 정의. 그러나 CTE 중 하나라도 재귀적(rCTE)인 경우 명령문 시작 부분에 RECURSIVE 키워드를 사용해야 합니다.
예:
WITH RECURSIVE cte1 AS ( ... ), cte2 AS ( SELECT ... UNION ALL SELECT ... ), cte3 AS ( ... ) SELECT ... FROM cte3 WHERE ...
이 예에서는 cte1 비재귀적 CTE이고, cte2는 rCTE이고, cte3은 또 다른 비재귀적입니다. CTE.
RECURSIVE 키워드를 사용할 때 WITH 절의 순서는 관련이 없습니다. 즉, 목록의 뒷부분에 있는 CTE를 참조할 수 있습니다.
경우에 따라 비재귀 CTE를 사용하여 쿼리를 단순화할 수도 있습니다. 예를 들어, 비재귀 CTE를 사용하여 다른 CTE에서 사용할 수 있는 임시 테이블을 생성할 수 있습니다.
단일 쿼리에서 여러 CTE를 사용하면 코드의 성능과 가독성을 향상시킬 수 있습니다. .
위 내용은 단일 SQL 쿼리에서 재귀 CTE를 포함한 여러 CTE를 결합하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!