【发布时间】:2021-06-01 15:25:27
【问题描述】:
我想从三个联合行记录中选择最上面的日期(基于我的 SQL 查询),但我遇到了这个错误:
选择列表中的列 'tbl1.intDocID' 无效,因为它既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
SELECT TOP 1
a.YearX, intClientCode
FROM
(SELECT intDocID, MAX(dtY1) AS YearX, 1 AS position
FROM [tbl1] WHERE intDocID = '834'
UNION ALL
SELECT intDocID, dtY2, 2 FROM [tbl1]
WHERE intDocID = '834'
UNION ALL
SELECT intDocID, dtY3, 3 FROM [tbl1]
WHERE intDocID = '834') a
ORDER BY
a.YearX DESC
【问题讨论】:
标签: sql sql-server select union union-all