MS SQL显示结果biger和sum

时间:2018-01-15 09:14:37

标签: sql-server

我有桌子看起来如下:

NAME        VALUE
stock1      -1
stock1       5
stock1      -2
stock2      10
stock2      -2
stock2      -1
stock3      15
stock4      16
stock4      -5
stock4      -6

并且已经编写了以下SQL语句,

select 
x.name, x.SUM(value) 
from tabelex x

join tabeley y on x.id = y.id

where y.location like = ENG

我想知道的是,如何让它显示结果> 1

1 个答案:

答案 0 :(得分:0)

如果你需要的是只显示SUM(值)大于1的值,那么只需添加一个having和一个Group by:

select 
x.name, SUM(x.value) 
from tabelex x

join tabeley y on x.id = y.id

where y.location like 'ENG'
group by x.name -- Added
having SUM(x.value) >1 -- Added

您不能在不使用Group By的情况下对某些列使用Aggregates,如果您只想使用少数列,则需要对所有列使用Aggregate,然后Group By必须