Pregunta

My table data

LOCATION GROUP  FUNCTION STATUS
L1         G1       F1   0
L1         G1       F1   1
L1         G1       F1   1
L1         G1       F2   1
L1         G1       F2   0
L1         G1       F2   0
L1         G1       F3   1
L1         G1       F3   0
L1         G1       F3   1

Output that I want

LOCATION GROUP F1   F2  F3
L1        G1   0    1   1
L1        G1   1    0   0
L1        G1   1    0   1

I try to use Select CASE but it don't work

Thanks you.

No hay solución correcta

Otros consejos

it is not giving exact result but we can go through like this

DECLARE @amount TABLE (LOCATION  VARCHAR(10),GROUPS VARCHAR(10),FUNCTIONS VARCHAR(10),Status INT)

INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F1',0)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F1',1)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F1',1)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F2',1)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F2',0)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F2',0)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F3',0)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F3',0)
INSERT INTo @amount (LOCATION,GROUPS,FUNCTIONS,Status)VALUES ('L1','G1','F3',1)

select LOCATION,GROUPS,Function1,Function2,Function3   from
(Select location,GROUPS,Status,FUNCTIONS from @amount) t
PIVOT (MAX(Status)FOR FUNCTIONS IN ([Function1],[Function2],[Function3]))AS p
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top