当前位置: 代码迷 >> Sql Server >> 关于查询月份的有关问题
  详细解决方案

关于查询月份的有关问题

热度:201   发布时间:2016-04-27 19:28:54.0
关于查询月份的问题

表1是原本的内容,表2是查询后的结果,要求将表1所缺少的月份补充上去,表1中第二列显示的内容在表2中也相应显示出来,其它月份在表中的第二列没内容的,以零显示.请各位大虾指点指点.

------解决方案--------------------
SQL code
--测试数据declare @T table(yd varchar(10),rs int)insert @Tselect '2006-1',5 union allselect '2006-2',8 union allselect '2006-5',10 union allselect '2006-8',3 union allselect '2006-12',10select top 12 mon=identity(int,1,1) into #mon from syscolumnsselect yd=a.yd+ltrim(b.mon),rs=isnull(c.rs,0) from     (select distinct yd=left(yd,5) from @T) a     cross join #mon b    left join @T c    on a.yd+ltrim(b.mon)=c.yd/*yd    rs2006-1    52006-2    82006-3    02006-4    02006-5    102006-6    02006-7    02006-8    32006-9    02006-10    02006-11    02006-12    10*/--删除测试drop table #mon
  相关解决方案