2016-12-28 43 views
-1

我从表中选择PatientID,Location,LN,FN,ServiceCode1,ServiceDate1,ServiceCode2,ServiceDate2。我试图列出每个服务和相应的日期作为自己的行。附图显示了我想如何以绿色突出显示。我试过使用PIVOT功能,但没有运气。 ColumnToRow将特定列转换为SQL中的行

+0

你真正想要'UNPIVOT'。 http://stackoverflow.com/questions/24828346/sql-server-unpivot-multiple-columns –

+0

第二个UNPIVOT。你能提供样本数据吗?谢谢 –

回答

1

与交叉的帮助下加入

Select A.PatientID 
     ,A.Location 
     ,A.Last_Name 
     ,A.First_Name 
     ,B.* 
From YourTable A 
Cross Join (
       Values ('Service_Code1',A.Service_Date1) 
        ,('Service_Code2',A.Service_Date2) 
      ) B (Service_Code,Service_Date)