Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
[ql server 2005] Tabelle a campi incroiciati
martedì 14 febbraio 2012 - 17.57
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mazinga76
Profilo
| Newbie
10
messaggi | Data Invio:
mar 14 feb 2012 - 17:57
Ciao a tutti,
sto impazzendo per realizzare una tabella a campi incrociatisu sql server 2005.
Ho una tabella di partenza che e' la seguente:
379x264
39Kb
la mia necessita' e di ottenere la seguente tabella a campi incrociati:
662x106
17Kb
considerate che le date sono variabili e vanno da un minimo di 1 ad max di 3 e che anche l'elenco dei venditori e' variabile.
In access viene fatta cosi':
TRANSFORM Sum(vendite.[NumVendite]) AS SumOfNumVendite
SELECT vendite.[Venditore], vendite.[Prodotto], Sum(vendite.[NumVendite]) AS [Total Of NumVendite], Sum([NumVendite])-1 AS [Total Of NumVendite-1]
FROM vendite
GROUP BY vendite.[Venditore], vendite.[Prodotto]
PIVOT vendite.[Data];
ed in sql???
grazie e spero che qualcuno riesca ad aiutarmi
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mar 14 feb 2012 - 21:49
>ed in sql???
Ciao,
SQL Server offre i comandi PIVOT e UNPIVOT ma a differenza della TRANSFORM di Access non permettono di scrivere query cross tab dinamiche.
L'assurdità è che nemmeno l'imminente SQL Server 2012 sarà in grado di farlo!
Puoi aggirare l'ostacolo ricorrendo al Dynamic SQL, ma a mio parere è solo un workaround (e se non presti attenzione rischi di subire attacchi di SQL Injection).
A titolo di esempio leggi questo post:
http://sqlblogcasts.com/blogs/madhivanan/archive/2008/08/27/dynamic-pivot-in-sql-server-2005.aspx
>grazie e spero che qualcuno riesca ad aiutarmi
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
Torna su
Stanze Forum
Elenco Threads
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 !