小编jor*_*rge的帖子

SUM结果值即使使用case语句也会重复

我使用posgresql作为数据库,java作为编程语言使用hibernate.我的问题是这个查询:

select cast(sum(CASE WHEN p.nropack > 0 THEN p.nropack ELSE 0 END) as integer),
cast(sum(CASE WHEN p.nropack < 0 THEN p.nropack ELSE 0 END) as integer),
cast(p.fechareg as date) 
from pronostico p 
inner join aeropuerto a on (a.idaeropuerto=p.idaeropuerto)
inner join ciudad c on (a.idciudad=c.idciudad)
inner join pais ps on (ps.idpais=c.idpais)
inner join continente ct on (ct.idcontinente=ps.idcontinente)
where c.idciudad=105
group by cast (p.fechareg as date);
Run Code Online (Sandbox Code Playgroud)

结果我得到:

sum;sum;fechareg 
30;-15;"2012-11-15"
Run Code Online (Sandbox Code Playgroud)

但是当我在我的程序中使用它时:

public ArrayList<RepKardex> listarKardex(int ciud){  
    ciud=105; 
    ArrayList<RepKardex> listaKardex = new ArrayList<>();
    Session session …
Run Code Online (Sandbox Code Playgroud)

java sql postgresql hibernate sum

6
推荐指数
1
解决办法
220
查看次数

标签 统计

hibernate ×1

java ×1

postgresql ×1

sql ×1

sum ×1