select name,id,
max(case when groupa = 'A' then groupa end) as group1,
max(case when groupa = 'B' then groupa end) as group2,
max( case when groupa = 'C' then groupa end) as group3
from tablename
group by name, id
hvis antallet af groupa er fastsat, ville forespørgslen ovenfor fungere.
Rediger:Brug af pivot
select * from
(select name, id , groupa from tablename)
pivot xml (
max(groupa) for groupa in
(select distinct groupa from tablename)
)
Tak for løsningen. Jeg er der næsten. Dette er hvad jeg får efter at have kørt denne forespørgsel. Faktisk er der 53 forskellige GRUPPER, så det tilføjer 53 kolonner, men det maksimale antal grupper, der er tildelt en bruger, er 5.
NAME ID A B C D E F G H
James 20 A null null null null null null H
Michael 30 A B null null E null null null
Hvordan får jeg resultater som dette...
NAME ID GROUP_1 GROUP_2 GROUP_3
James 20 A H
Michael 30 A B E
Hvordan får jeg mit resultat, som jeg nævnte i spørgsmålet? Tak,