【发布时间】:2013-10-22 03:03:50
【问题描述】:
以下 CTE 查询运行良好:
;WITH QResult AS
(SELECT
ROW_NUMBER() OVER (ORDER BY Ad_Date DESC) AS Row,
*
FROM [vw_ads]
)
SELECT
Co1l, Col2,
MAX(Row) OVER()
FROM QResult
我需要的是从这个查询select top(10),我已经尝试了以下
Select top (10) from With ...
但它抛出了以下异常:
关键字“with”附近的语法不正确。如果这个语句是 公共表表达式、xmlnamespaces 子句或更改跟踪 上下文子句,前一条语句必须以 分号。
如何从 WITH Query 中选择聚合函数?
【问题讨论】:
-
WITH(例如 CTE)必须始终在使用它的 SELECT 之前。我不确定为什么使用 TOP 的查询与原始查询有很大差异 - 只需在适当的位置添加“前 10 名”而不移动任何其他内容就足够了。
标签: sql sql-server tsql common-table-expression