在SQL查询中同时使用union和count(*)

问题描述 投票:38回答:3

我有一个SQL查询,看起来像这样:

select name, count (*) from Results group by name order by name

和从归档结果表加载的另一个相同,但是字段相同。

select name, count (*) from Archive_Results group by name order by name

我将如何在一个查询中将两者结合? (因此group by仍然可以正常运行)。我尝试了所有的联合,但是没有用。我想念什么?

sql union
3个回答
73
投票
SELECT tem.name, COUNT(*) 
FROM (
  SELECT name FROM results
  UNION ALL
  SELECT name FROM archive_results
) AS tem
GROUP BY name
ORDER BY name

9
投票

如果您有支持的索引,并且计数相对较高,则这种方法可能比建议的解决方案要快得多:


7
投票

是您的目标...

© www.soinside.com 2019 - 2024. All rights reserved.