2013-07-29 34 views
0

使用SUM函數我使用問題在SQL

select sum(value1-value2) as Result from tbl 

它工作正常,但是當我嘗試使用

select id,name,sum(value1-value2) as Result from tbl 

這是行不通的。

什麼是解決方案?

+0

Sum是一個聚合函數。你是否想要將列中的所有值加起來,還是試圖獲得value1 - value2的結果? –

回答

4

你需要一個group by,如果你想爲每個ID /名稱值:

select id, name, sum(value1-value2) as Result 
from tbl 
group by id, name; 

否則,你需要把它們聚合函數:

select min(id), min(name), sum(value1-value2) as Result 
from tbl; 

或者,如果你只是想每行的差異,則省略sum()

select id, name, (value1-value2) as Result 
from tbl; 
+0

非常感謝... – Sandeep

1

當喲ü使用sum(),您應該添加組

select id,name,sum(value1-value2) as Result 
from tbl 
group by id, name 
+0

有沒有必要通過條款 – Verma

+0

向組添加「結果」,感謝您的更正。這應該是不使用Result組 – akbarbin