본문 바로가기

728x90
반응형

SQL Server With절

(2)
WITH 절, 재귀 CTE (Common Table Expression) 저번 CTE관련해서, 재귀 CTE CTE관련된 첫번째 포스팅: WITH 절 CTE (Common Table Expression) 임시테이블? * 재귀 CTE??- 적어도 2개이상의 쿼리를 통해 정의- 적어도 하나는 고정멤버, 나머지 하나는 재귀멤버가 되는 형태 * 기본적인 재귀 CTE 형식WITH [ () ]AS(UNION ALL); - 기준 멤버는 관계형 결과 테이블을 반환하는 쿼리.- 재귀 쿼리가 아닌 일반적인 테이블표현식으로 정의되는 쿼리인 기준 멤버는 한 번만 호출- 기준 멤버와 재귀 멤버의 쿼리가 반환하는 컬럼의 숫자나 컬럼의 데이터 형식은 반드시 일치해야- 외부 쿼리에서 CTE 이름을 참조하는것은 기준 멤버로부터 만들어지는 단일 결과셋 또는 재귀멤버의 모든 반복적인 호출을 통해 만들어지는 결과..
WITH 절 CTE (Common Table Expression) 임시테이블? WITH 절 CTE (Common Table Expression) 임시테이블? - 기존의 뷰, 파생 테이블, 임시 테이블 등으로 사용되던것을 대신할수있다. 비재귀적, 재귀적 2가지 방식이 있는데, 비재귀적 방식만을 보겠습니다. 형식WITH 테이블명(열이름)AS( 쿼리문.. )SELECT 열이름 FROM 테이블명 ; (UPDATE 등도 가능하지만 주로 사용되는 건 SELECT) Ex) 각 품목(goods)별 총판매액(total) 보고자 할때WITH Purchase1(goods, total) AS( SELECT goods, SUM(price * amount) FROM purchaseTbl GROUP BY goods )SELECT * FROM Purchase1 ORDER BY total DESC; -- 가장 ..

반응형