2013-06-25 2 views
1

하나의 쿼리에서 여러 개의 WITH-subquery를 사용할 수 있습니까?여러 개의 하위 쿼리

;WITH x AS (
    SELECT ... 
), 
WITH y AS (
    SELECT ... 
) 
SELECT * FROM z 
INNER JOIN x ON ... 
INNER JOIN y ON ... 

답변

3

, 그것은 common table expression라고하며 예, 여러 CTE의를 사용할 수있는 단 하나의 WITH를 사용하고이 같은 두 번째 with를 제거 :

WITH x AS (
    SELECT ... 
),y AS (
    SELECT ... 
) 
SELECT * FROM z 
INNER JOIN x ON ... 
INNER JOIN y ON ... 
+0

우수함! 나는 인터넷에서 좋은 예를 찾을 수 없었다 :(with 'keyworh'를 찾는 것 '은별로 도움이되지 않는다. ( –

+0

@TomasWalek 올바른 용어는 ** SQL Server 다중 CTE **이어야한다. : //blog.sqlauthority.com/2009/08/08/sql-server-multiple-cte-in-one-select-statement-query/ –

+0

@TomasWalek 또한이 책 : [** Microsoft SQL Server 2012 T-SQL Fundamentals **] (http://www.amazon.com/Microsoft-Server-2012-T-SQL-Fundamentals/dp/0735658145)는 SQL Server 기본 사항에 대한 훌륭한 책입니다. –

관련 문제