grazie per le tue precisazioni![]()
ma, scusa la mia ignoranza, cos'è una stored? e come la si usa?
![]()
grazie per le tue precisazioni![]()
ma, scusa la mia ignoranza, cos'è una stored? e come la si usa?
![]()
ecco la mia soluzione ( per prova ho fatto un filtro solo sull'anno 2010 a confronto con il 2009) :
1) query (A2010)
select causcont.CU_KEY,sum(scadenze.SC_IMP) as i2010 from (scadenze Left outer Join causcont on causcont.CU_KEY=scadenze.SC_CAU) where (scadenze.SC_ANN = "2010") group by causcont.CU_KEY
2) query
select scadenze.SC_CAU as codice,causcont.CU_DES as causale,SUM(scadenze.SC_IMP) as i2009,A1.i2010,a1.i2010 - SUM(scadenze.SC_IMP) as differenza,iif( SUM(scadenze.sc_imp) > 0, (a1.i2010 - SUM(scadenze.SC_IMP) ) / SUM(scadenze.SC_IMP) * 100 , 0 ) as percentuale from ((scadenze Left outer Join A2010 A1 on scadenze.sc_cau=a1.cu_key) Left outer Join causcont on causcont.CU_KEY=scadenze.SC_CAU) where (scadenze.SC_ANN = "2009") group by scadenze.SC_CAU
in questo modo sono riuscita ad ottenere una riga per ogni causale con i dati del 2009, del 2010, differenze e %
![]()
Una stored procedure è, appunto, una procedura: essa ripete le istruzioni SQL al suo interno. La comodità è che puoi riusarla passando parametri diversi, senza riscrivere le query ogni volta. Puoi operare anche calcoli piuttosto complessi, per cui ti consiglio di dare un'occhiata alla guida presente qui su HTML.it nella sezione database.![]()