我想在执行SQL查询中的并集或某些命令时对列值求和

时间:2018-10-28 11:54:58

标签: sql oracle

SQL>(从型号='1005'的PC中选择价格)

2个联合

3(从型号为“ 3003”的打印机中选择价格);

    价格


 1999

 3599​

谢谢你,先生 这是我在sql中的代码。但是我不知道如何对这些值求和。 在这种情况下,我该如何求和? 请帮助我。

2 个答案:

答案 0 :(得分:1)

您不希望empty list !!!这将删除重复项,因此,如果价格恰好相同,您将不会获得正确的值。您需要UNION

执行此操作的一种方法是将查询移至UNION ALL子句并使用聚合:

FROM

对于两个标量值,您也可以将它们相加:

select sum(price)
from ((select price from PC where model = '1005'
      ) union all
      (select price from Printer where model = '3003'
      )
     ) p;

当然,如果缺少任何一个,那么在这种情况下,结果将是select ( (select price from PC where model = '1005') + (select price from Printer where model = '3003') ) from dual;

答案 1 :(得分:0)

您需要一个外部SQL,将这些值相加:

{{1}}