22,209
社区成员
发帖
与我相关
我的任务
分享
select fid,max(sbst)社保开始时间,max(sbet)社保结束时间,max(yhst)银行开始时间,max(yhet)银行结束时间
from(
select fid,sbst=case when CerName='社保' then starttime else null end,sbet=case when CerName='社保' then EndTime else null end,yhst=case when CerName='银行' then starttime else null end,yhet=case when CerName='银行' then EndTime else null end from tb
)t group by fid
declare @sql nvarchar(max)
select @sql=isnull(@sql,'')+',max(case when CerName='''+CerName+''' then starttime else null end)['+CerName+'开始时间],max(case when CerName='''+CerName+''' then EndTime else null end)['+CerName+'结束时间]' from (select distinct CerName from tb)t
exec('select fid'+@sql+' from tb group by fid')