SQL计划日历

时间:2014-09-26 15:16:40

标签: sql calendar

可以在SQL上创建一个查询来安排我的IT日历吗? 我有这张桌子:

IT Technician | Date
John          | 21-09-2014
Mark          | 20-09-2014

要控制我的IT计划,我想要一份我的IT人员的时间表列表。

           19-09-2014     20-09-2014     21-09-2014
John          Free           Free         Occupied
Mark          Free          Occupied        Free
Manuel        Free           Free           Free
Ricardo       Free           Free           Free

可以在SQL查询中使用吗?

提前谢谢你, TiagoJanuário

1 个答案:

答案 0 :(得分:0)

您需要使用PIVOT动态SQL

DECLARE @cols nvarchar(max)
DECLARE @query nvarchar(max)
set @cols = ( STUFF( ( select ',[' + Date + ']' from Table1 
                       for xml path ('')),1,1,''))

set @query = 'select  '+ @cols +' FROM 
(select *  from Table1 )T
pivot
( max([IT Technician]) for Date in ( ' + @cols + ')
)p'


exec sp_executesql @query