在sum聚合函数中使用子查询

时间:2012-11-30 08:39:05

标签: sql

以下查询

select OrderID,fltprc
 from tab1 

给我以下结果:

OrderID#fltprc
1595 101.85
1585 25.00
1585 25.00
1682 200.54

我想要基于唯一ID的fltprc总和

它表示独特订单的fltprc之和。

3 个答案:

答案 0 :(得分:2)

试试这个:

SELECT SUM(DISTINCT fltprc) FROM tab1

答案 1 :(得分:0)

您的语法不正确!

要在变量use上存储值:

SET @test := (select sum(distinct fltprc) from tab1);
SELECT @test;

看看这个小提琴:http://sqlfiddle.com/#!2/4bbd1/13

答案 2 :(得分:0)

不确定我是否完全关注您的问题。如果您想为每个唯一的orderID获得“fltprc”的总和,那么只需使用GROUP BY,例如

SELECT
   OrderID,
   SUM(fltprc) 
FROM
   tab1
GROUP BY
   OrderID