SQL Server 2005 how to use pivot instead of a bunch of case statments? -


please show me how can modify sql select use pivot instead of case testaments.

select t.projectid, coalesce(max(executivechampion), 'n/a'), coalesce(max(businessowner), 'n/a'), coalesce(max(businessanalyst), 'n/a'), coalesce(max(generalcontractor), 'n/a'), coalesce(max(primarypm), 'n/a'), coalesce(max(developmentmanager), 'n/a'), coalesce(max(developmentlead), 'n/a'), coalesce(max(tdm), 'n/a'), coalesce(max(ptm), 'n/a') ( select pl.projectid, case when stakeholdercid = 95 fullname else null end 'executivechampion', case when stakeholdercid = 96 fullname else null end 'businessowner', case when stakeholdercid = 97 fullname else null end 'businessanalyst', case when stakeholdercid = 100 fullname else null end 'generalcontractor', case when stakeholdercid = 101 fullname else null end 'primarypm', case when stakeholdercid = 102 fullname else null end 'developmentmanager', case when stakeholdercid = 103 fullname else null end 'developmentlead', case when stakeholdercid = 104 fullname else null end 'tdm', case when stakeholdercid = 105 fullname else null end 'ptm' @plist pl inner join statuscode sc on 1 = 1 , scid in (8, 9) left outer join projectstakeholder ps on pl.projectid = ps.projectid , sc.cid = ps.stakeholdercid ) t group t.projectid 

something this:

select  projectid,         isnull([95],'n/a') executivechampion,         isnull([96],'n/a') businessowner,         isnull([97],'n/a') businessanalyst,         isnull([100],'n/a') generalcontractor,         isnull([101],'n/a') primarypm,         isnull([102],'n/a') developmentmanager,         isnull([103],'n/a') developmentlead,         isnull([104],'n/a') tdm,         isnull([105],'n/a') ptm (  select pl.projectid, stakeholdercid, fullname         @plist pl         inner join statuscode sc             on 1 = 1             , scid in (8, 9)         left join projectstakeholder ps             on pl.projectid = ps.projectid             , sc.cid = ps.stakeholdercid) st pivot (max(fullname) stakeholdercid in ([95], [96], [97], [100], [101], [102], [103], [104], [105])) pt 

Comments

Popular posts from this blog

java - SNMP4J General Variable Binding Error -

windows - Python Service Installation - "Could not find PythonClass entry" -

Determine if a XmlNode is empty or null in C#? -