组合两个或多个select语句的输出

时间:2013-08-13 07:59:23

标签: sql sql-server-2008 select sqlcommand

如何合并两个或多个output语句的SELECT,我有多个表格,其中包含我需要的一些数据fetch所以我写了多个SELECT查询。现在我想结合查询结果,这样我还需要做什么?我希望输出为:

t1.qty,t2.qty,t3.qty 

3 个答案:

答案 0 :(得分:18)

一种选择是:

SELECT (SELECT SUM(qty) FROM Table1 WHERE ...),
       (SELECT SUM(qty) FROM Table2 WHERE ...),
       (SELECT SUM(qty) FROM Table3 WHERE ...)

如果有链接,则另一个会加入:

SELECT * 
FROM   (SELECT ID,SUM(qty) FROM Table1 GROUP BY ID) T1
       JOIN (SELECT ID,SUM(qty) FROM Table2 GROUP BY ID) T2
           ON T1.ID = T2.ID
       JOIN (SELECT ID,SUM(qty) FROM Table3 GROUP BY ID) T3
           ON T1.ID = T3.ID

以上选项是将结果显示在一行中。

您可能需要联合来组合行:

SELECT qty FROM Table1
UNION
SELECT qty FROM Table2
UNION
SELECT qty FROM Table3

如果您定义更具体的需求,还有更多选择

答案 1 :(得分:3)

为什么不创建一个可以一次获取所有内容的语句?

SELECT tableA.data1, tableB.data2 FROM tableA, tableB WHERE <condition here>

答案 2 :(得分:0)

task1 =“select top”&amp; strmcount&amp; “*来自注册地点”&amp; strtotal1
task2 =“选择顶部”&amp; strfcount&amp; “*来自注册地点”&amp; strtotal2

在并行执行

相关问题