Traduzione banale da SQL a T-SQL

martedì 27 maggio 2008 - 10.45

rebzone Profilo | Newbie

Ciao di nuovo,
ne approfitto per fare una semplice domanda: come traduco la seguente stringa SQL in T-SQL?

SELECT DISTINCT data, SUM(ore) AS ore_totali, [ore_totali] * 60 AS minuti_totali FROM tabella GROUP BY data

mi viene restituito errore nella parte
[ore_totali] * 60
dicendo che non esiste tale colonna...

Grazie infinite

alx_81 Profilo | Guru

>Ciao di nuovo,
Ciao!

>ne approfitto per fare una semplice domanda: come traduco la
>seguente stringa SQL in T-SQL?
>
>SELECT DISTINCT data, SUM(ore) AS ore_totali, [ore_totali] *
>60 AS minuti_totali FROM tabella GROUP BY data
>
-- EDIT --
non avevo fatto caso all'alias
Lorenzo ha risposto correttamente
>
>Grazie infinite
di nulla!

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

lbenaglia Profilo | Guru

>come traduco la seguente stringa SQL in T-SQL?
>
>SELECT DISTINCT data, SUM(ore) AS ore_totali, [ore_totali] *
>60 AS minuti_totali FROM tabella GROUP BY data
>
>mi viene restituito errore nella parte
>[ore_totali] * 60
>dicendo che non esiste tale colonna...

Ciao Alberto,

Infatti non esiste
Non è una questione di traduzione, l'errore deriva dal fatto che non puoi utilizzare un alias di colonna come base di partenza per una nuova colonna calcolata.
Inoltre non ha senso eseguire una DISTINCT dato che raggruppi già per data (sarebbe un doppio raggruppamento che SQL Server eviterà di eseguire inutilmente ).

Riscrivi quel comando nel seguente modo:

SELECT data , SUM(ore) AS ore_totali , SUM(ore) * 60 AS minuti_totali FROM tabella GROUP BY data;

>Grazie infinite
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org

rebzone Profilo | Newbie

grandissimi! Grazie mille!!!! :)

...certo che è un parto riscrivere tutte le query che prima giravano in access...
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5