我正在尝试获取第二高的采样日期并出现以下错误,请让我知道我在哪里做错了
(SELECT* FROM resheader WHERE sampledate =
(SELECT MAX(sampleDate) FROM resheader
WHERE sampleDate < (SELECT MAX(sampleDate) FROM resheader)
)
) as 'Previous Sample'
错误
消息116,级别16,状态1,第12行
未在子查询中引入子查询时在选择列表中指定
存在。
最佳答案
在SQL Server 2012中,可以使用 OFFSET FETCH
子句获取第二行(按所需条件排序后):
SELECT * FROM resheader
ORDER BY sampledate DESC
OFFSET 1 ROWS
FETCH NEXT 1 ROWS ONLY