22,298
社区成员




WITH T1 AS(
SELECT * FROM dbo.T_AC_Questions A WHERE A.QV_ID=@QVID AND A.SS_CODE='ON' AND A.QT_ID NOT IN(
SELECT QT_ID FROM @Questions)
CTE只对当前批有用
也就是说只能调用一次
if object_id('tempdb..#temp') is not null
drop table #temp
;with f as
(
select * from tb
)
select * into #temp from f
--
如果再select * from #temp as a inner join b on ..就会报错
CTE只对当前批有用
也就是说只能调用一次
;with f as
(
select * from tb
)
select * from f
--
如果再select * from f as a inner join b on ..就会报错
;WITH cte AS (SELECT 1 id UNION ALL SELECT 2),
cte2 AS
(
SELECT * FROM cte
)
SELECT *,'FirstCTE' FROM cte2
UNION ALL
SELECT *,'SecondCTE' FROM cte
/*
id
----------- ---------
1 FirstCTE
2 FirstCTE
1 SecondCTE
2 SecondCTE
*/
;WITH cte AS (SELECT 1 id UNION ALL SELECT 2),
cte2 AS
(
SELECT * FROM cte
)
SELECT a.id AS AID,B.ID AS BID FROM cte a inner join cte2 b ON a.id=b.id
/*
AID BID
----------- -----------
1 1
2 2
*/