如何在T-SQL中使用group by和union?我想按联合结果的第一列进行分组,我写了下面的SQL,但它不起作用。我只是不知道如何引用联合结果的指定列(在本例中是1)。
SELECT *
FROM ( SELECT a.id ,
a.time
FROM dbo.a
UNION
SELECT b.id ,
b.time
FROM dbo.b
)
GROUP BY 1
发布于 2009-10-29 13:10:27
您需要为子查询添加别名。因此,您的语句应该是:
Select Z.id
From (
Select id, time
From dbo.tablea
Union All
Select id, time
From dbo.tableb
) As Z
Group By Z.id
发布于 2018-03-13 03:38:07
with UnionTable as
(
SELECT a.id, a.time FROM dbo.a
UNION
SELECT b.id, b.time FROM dbo.b
) SELECT id FROM UnionTable GROUP BY id
https://stackoverflow.com/questions/1604815
复制相似问题