如何将EXEC(@SQL)或EXEC SP_EXECUTESQL(@SQL)与公用表表达式一起使用?
下面不起作用。
WITH CTE_Customer (ID, Name)
AS
(
EXEC (@strSqlCommand)
)
答案 0 :(得分:6)
简短的回答是你不能:
http://msdn.microsoft.com/en-us/library/ms175972.aspx说: “CTE_query_definition必须满足与创建视图相同的要求” 这基本上说你只限于SELECT语句。
一些解决方法可能包括使用临时表或表变量,但它实际上取决于上下文。