Domanda

Buon pomeriggio Stackoverflow.

Ho bisogno di aiuto con il pivoting di alcuni dati.Ho provato a cercare come farlo su Internet ma non avere fortuna.

Ho 4 colonne (A, B, C, D) e una riga di dati.

Vorrei che i dati abbiano 2 colonne con 4 righe.

a b c d
1 2 3 4
.

per diventare

a 1
b 2
c 3
d 4
.

SQL Fiddle qui http://sqlfiddle.com/#!6/68b32/280

Grazie per il tuo tempo

È stato utile?

Soluzione

SELECT letter, val
FROM @t
unpivot(val for letter in (a,b,c,d)) as unpvt
.

SQL Fiddle

Altri suggerimenti

Quello che stai cercando è unpitot

Prova questo - testato in SQL-Server-2012:

DECLARE @t TABLE
(
    a int,
    b int,
    c int,
    d int
) 

INSERT INTO @t
SELECT 1,2,3,4

select 
  unpvt.colName
, unpvt.colVal
from (
   select
     a
   , b
   , c
   , d
   from @t
) p
UNPIVOT (colVal FOR colName IN (a, b, c, d) ) as unpvt
.

Risultati:

colName colVal
a   1
b   2
c   3
d   4
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top