如何将多个SQL查询相加?

时间:2009-11-13 15:20:32

标签: sql sql-server

我正在尝试在多个表上运行多个查询 - 类似于“从TableA中选择count(*),其中x = 1”每个表。

我想做的是获取返回的所有count(*)值并将它们加总为单个值......

有什么想法吗?

2 个答案:

答案 0 :(得分:14)

select sum(individual_counts) from
(
  select count(*) as individual_counts from TableA where x = 1
    union all
  select count(*) from TableB where x = 2
....
) as temp_table_name

在使用联合时,通常只需要第一个选择的别名。

答案 1 :(得分:8)

不是100%肯定你的意思,但也许:

SELECT (SELECT COUNT(*) FROM tableA)+(SELECT COUNT(*) FROM tableB)