Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

È possibile eseguire il pivot di SQL Server senza conoscere i nomi delle colonne risultanti?

L'esempio a cui ti sei collegato utilizza SQL dinamico. Sfortunatamente, non esiste un altro metodo integrato per il pivot in SQL Server quando le colonne di output non sono note in anticipo.

Se i dati non sono troppo grandi, è probabilmente più semplice eseguire semplicemente una normale query di riga da ASP.NET ed eseguire il pivot nel codice dell'applicazione. Se i dati sono molto grandi, dovrai generare l'SQL in modo dinamico dopo aver prima interrogato i possibili valori delle colonne.

Si noti che in realtà non è necessario scrivere un'istruzione SQL che generi SQL dinamico; puoi semplicemente generare l'SQL in ASP.NET e molto probabilmente sarà molto più semplice. Non dimenticare di sfuggire al distinto Site valori prima di inserirli in una query generata e non dimenticare di parametrizzare qualsiasi parte dell'istruzione SQL che normalmente faresti senza il pivot.