Sql Server-子查询中的用户CTE
|
之前曾有人问过这个问题-
如何在SQL Server的子查询中使用CTE?
建议的唯一答案是“仅在顶部定义您的CTE并在子查询中访问它?”
这可行,但我真的很希望能够在以下情况下使用CTE-
作为SELECT中的子查询
作为SELECT的FROM子句中的派生表
这两个都可以在PostgreSQL中工作。使用Sql Server 2005,我得到\“关键字\'with \'\”附近的语法不正确。
我想要它的原因是我的大多数查询都是动态构造的,并且我希望能够定义CTE,将其保存在某个位置,然后根据需要将其放入更复杂的查询中。
如果Sql Server根本不支持这种用法,我将不得不接受它,但是我还没有阅读任何内容指出不允许这样做。
有谁知道是否有可能使它起作用?
没有找到相关结果
已邀请:
2 个回复
锯康
这是假设您正在SQL Server外部构造SQL。 您也可以考虑创建视图。视图可以包含CTE,并且它们可以用作子查询或派生表。如果您很少生成SQL(仅在安装过程中或在部署过程中),则视图是一个不错的选择。
剑哎