我可以在一个选择中得到sum()吗?

时间:2009-12-12 15:36:08

标签: sql

我有这样的表:

A B
1 1.5
1 1.5
2 2.3
2 2.3
2 2.3
3 1.5
3 1.5

我怎样才能得到B列的总和,按1.5,2.3和1.5分组。 简而言之,我想首先分组,然后进行总和(),但在一个选择中。

在此表中,如果按A列分组,结果为:

A B
1 1.5
2 2.3
3 1.5

现在我想总结()B列。

5 个答案:

答案 0 :(得分:1)

我不是肯定的,但看起来你想要B列中每个单独值的总和(完全忽略A列)

尝试一下:

select b, sum(b)
from tableName
group by b

答案 1 :(得分:1)

select A, sum(B) from table
group by A

应该做的伎俩。

答案 2 :(得分:1)

这将在a和b上分组后对不同的行进行求和:

select sum(b)
from (
    select b
    from YourTable
    group by a, b
) sub

这将总结B的所有不同值:

select sum(distinct b)
from YourTable

这将为A的每个值加总B的最高值:

select sum(maxb)
from (
    select max(b) as maxb
    from YourTable
    group by a
) sub

答案 3 :(得分:0)

根据您的描述,这将为您完成:

select a, sum(b)
from myTable
group by a

答案 4 :(得分:0)

SELECT SUM(B)
FROM (SELECT DISTINCT A, B FROM tbl) PLEASE