原有数据格式频道 日期 时间段 收视率%
所有频道 2009-4-19 02:00 - 02:15 1.856
02:15 - 02:30 1.462
02:30 - 02:45 1.149
02:45 - 03:00 0.852
03:00 - 03:15 0.68
2009-4-20 02:00 - 02:15 1.424
02:15 - 02:30 1.277
02:30 - 02:45 1.006
02:45 - 03:00 0.848
03:00 - 03:15 0.787
安徽卫视 2009-4-19 02:00 - 02:15 0
02:15 - 02:30 0.019
02:30 - 02:45 0.032
02:45 - 03:00 0.006
03:00 - 03:15 0
2009-4-20 02:00 - 02:15 0
02:15 - 02:30 0
02:30 - 02:45 0.04
02:45 - 03:00 0.02
03:00 - 03:15 0
北京卡酷动画卫星频道 2009-4-19 02:00 - 02:15 0
02:15 - 02:30 0
02:30 - 02:45 0.005
02:45 - 03:00 0
03:00 - 03:15 0转成下面的格式频道 日期 时间段 收视率%
所有频道 2009-4-19 02:00 - 02:15 1.856
所有频道 2009-4-19 02:15 - 02:30 1.462
所有频道 2009-4-19 02:30 - 02:45 1.149
所有频道 2009-4-19 02:45 - 03:00 0.852
所有频道 2009-4-19 03:00 - 03:15 0.68
所有频道 2009-4-20 02:00 - 02:15 1.424
所有频道 2009-4-20 02:15 - 02:30 1.277
所有频道 2009-4-20 02:30 - 02:45 1.006
所有频道 2009-4-20 02:45 - 03:00 0.848
所有频道 2009-4-20 03:00 - 03:15 0.787
安徽卫视 2009-4-19 02:00 - 02:15 0
安徽卫视 2009-4-19 02:15 - 02:30 0.019
安徽卫视 2009-4-19 02:30 - 02:45 0.032
安徽卫视 2009-4-19 02:45 - 03:00 0.006
安徽卫视 2009-4-19 03:00 - 03:15 0
安徽卫视 2009-4-20 02:00 - 02:15 0
安徽卫视 2009-4-20 02:15 - 02:30 0
安徽卫视 2009-4-20 02:30 - 02:45 0.04
安徽卫视 2009-4-20 02:45 - 03:00 0.02
安徽卫视 2009-4-20 03:00 - 03:15 0
北京卡酷 2009-4-19 02:00 - 02:15 0
北京卡酷 2009-4-19 02:15 - 02:30 0
北京卡酷 2009-4-19 02:30 - 02:45 0.005
北京卡酷 2009-4-19 02:45 - 03:00 0
北京卡酷 2009-4-19 03:00 - 03:15 0谢谢各位

解决方案 »

  1.   

    顶上~!SIGNATURE----------------------------------------------------------------------
    碰碰车小游戏
    金庸群侠传3小游戏
    疯狂坦克小游戏
      

  2.   

    declare @T table(频道 varchar(50),日期 datetime ,时间段 varchar(100), 收视率 decimal(18,3))
    insert @T
    select '所有频道', '2009-4-19', '02:00   -   02:15', 1.856 union all
    select  null,       null,       '02:15   -   02:30', 1.462 union all
    select  null,       null,       '02:30   -   02:45', 1.149 union all
    select  null,       null,       '02:45   -   03:00', 0.852 union all
    select  null,       null,       '03:00   -   03:15', 0.68 union all
    select  null,      '2009-4-20', '02:00   -   02:15', 1.424 union all
    select  null,       null,       '02:15   -   02:30', 1.277 union all
    select  null,       null,       '02:30   -   02:45', 1.006 union all
    select  null,       null,       '02:45   -   03:00', 0.848 union all
    select  null,       null,       '03:00   -   03:15', 0.787 union all
    select '安徽卫视', '2009-4-19', '02:00   -   02:15', 0  union all
    select  null,       null,       '02:15   -   02:30', 0.019 union all
    select  null,       null,       '02:30   -   02:45', 0.032 union all
    select  null,       null,       '02:45   -   03:00', 0.006 union all
    select  null,       null,       '03:00   -   03:15', 0 union all
    select  null,       '2009-4-20','02:00   -   02:15', 0 union all
    select  null,       null,       '02:15   -   02:30', 0 union all
    select  null,       null,       '02:30   -   02:45', 0.04 union all
    select  null,       null,       '02:45   -   03:00', 0.02 union all
    select  null,       null,       '03:00   -   03:15', 0 union all
    select '北京卡酷动画卫星频道', '2009-4-19', '02:00   -   02:15', 0 union all
    select  null,       null,       '02:15   -   02:30', 0 union all
    select  null,       null,       '02:30   -   02:45', 0.005 union all
    select  null,       null,       '02:45   -   03:00', 0 union all
    select  null,       null,       '03:00   -   03:15', 0 declare @channel varchar(100)
    declare @date datetime
    set @channel = '3'
    set @date = ''
    update @T set 频道=case when 频道 is null then @channel else 频道 end ,
                  日期=case when 日期 is null then @date else 日期 end ,
                  @channel = case when 频道 is null then @channel else 频道 end,
                  @date = case when 日期 is null then @date else 日期 endselect * from @T