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
als het aantal groupa vast is, zou de bovenstaande vraag werken.
Bewerken:Draaipunt gebruiken
select * from
(select name, id , groupa from tablename)
pivot xml (
max(groupa) for groupa in
(select distinct groupa from tablename)
)
Bedankt voor de oplossing. Ik ben er bijna. Dit is wat ik krijg na het uitvoeren van deze query. Er zijn eigenlijk 53 verschillende GROEPEN, dus het voegt 53 kolommen toe, maar het maximale aantal groepen dat aan een gebruiker is toegewezen is 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
Hoe krijg ik zulke resultaten...
NAME ID GROUP_1 GROUP_2 GROUP_3
James 20 A H
Michael 30 A B E
Hoe krijg ik mijn resultaat zoals ik in de vraag vermeldde? Bedankt,