Somma di campi in una stored

martedì 24 luglio 2012 - 19.21
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Visual Studio 2010  |  SQL Server 2008 R2

trinity Profilo | Guru

Ciao e premetto che il post non sarà molto completo ma posso postare solo il codice della stored e il risultato che vorrei avere:


Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Questa stored funziona perfettamente, solo che vorrei anzi devo implemetare ed ottenre un unico record per gli italiani e poi per gli stranieri con la somma delle presenze e dell'imposta.
Allora la colonna tipomovimento identifica gli italiani ="ITA" e gli stranieri="STR" poi la colonna tipo_esenti identifica le varie categorie di esenzioni.
Quindi concludendo in base al tipo di esenzioni mi serve ottente un unico record di sommatoria sia per gli stranieri che per gli italiani.

CIao e grazie
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

micto27 Profilo | Senior Member

Se ho capito bene ...
nel GROUP BY puoi raggruppare per

case when alloggiati.comune_residenza_codice > 0 then 'ITA' else 'STR' End
anzichè
alloggiati.comune_residenza_codice

ciao, Michele

... ... group by alloggiati.codice_albergo, alberghi.descrizione, categorie.descrizione, case when alloggiati.comune_residenza_codice > 0 then 'ITA' else 'STR' End, imposta.tipo_esenti, imposta.desc_esenti, imposta.imposta_ita, imposta.imposta_str

trinity Profilo | Guru

Ciao e grazie dell'aiuto, ho modificato il group by come mi hai indicato te ma mi genera questo errore:

Column 'tab_alloggiati.Comune_Residenza_Codice' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

CIao
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

micto27 Profilo | Senior Member

ciao,

credo sia perchè c'è un secondo CASE WHEN..

case when alloggiati.comune_residenza_codice > 0 then...

e a questo punto nel group by ci andrebbe anche quello.
A questo punto prova qualcosa del genere (può essere che scrivendo mi sia sfuggito qualcosa non potendo provare la query).

Michele

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5