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