[Db] SUM che torna null e non 0
Cristiano Verondini
cristiano a verondini.it
Mar 8 Maggio 2007 17:58:16 CEST
>> Mi sono incaponito e con un terrificante
>>
>> SELECT
>> SUM(q.tipo1)-SUM(q.tipo2) FROM (
>> (SELECT
>> IF(tipo=1,SUM(importo),0) AS tipo1,
>> IF(tipo=2,SUM(importo),0) AS tipo2,
>> data
>> FROM mov
>> WHERE (tipo=1or rif_tipo=2) AND data ="2007-01-01"
>> GROUP BY tipo)
>> AS q)
>> GROUP BY q.data
>> Mi sa che è meglio fare due query lato applicativo...
Anche secondo me.
Comunque nella tua query ci sono dei SUM() dentro degli IF(), io farei
il contrario. Il GROUP BY della query esterna non dovrebbe servire,
considerato che nella WHERE interna hai unn criterio esattamente su data.
Per inciso:
SELECT SUM(IF(tipo=1, importo, -importo)) FROM mov WHERE (tipo=1 OR
rif_tipo=2) AND data ="2007-01-01"
--
Cristiano Verondini
http://www.verondini.it --- [ICQ: 114 190]
Maggiori informazioni sulla lista
Db