工作时间表:
人员ID   日期   工作时间
  1       8/1      8
  1       8/2      8
  1       8/3      8
  1       8/4      8
  1       8/5      8
  1       8/6      8
  1       8/7      8
员工表:
ID   姓名
1     张三显示成:
人员ID  工作时间1 工作时间2 工作时间3 工作时间4 工作时间5 工作时间6 工作时间7
 张三       8         8         8         8          8         8         8

解决方案 »

  1.   

     select ID,  
      sum(case 日期 when '8/1' then 工作时间else 0 end) as DAY1,  
      sum(case 日期 when '8/2' then 工作时间else 0 end) as DAY2 , 
      sum(case 日期 when '8/3' then 工作时间else 0 end) as DAY3,
      sum(case 日期 when '8/4' then 工作时间else 0 end) as DAY4, 
      sum(case 日期 when '8/5' then 工作时间else 0 end) as DAY5,  
      sum(case 日期 when '8/6' then 工作时间else 0 end) as DAY6,  
      sum(case 日期 when '8/7' then 工作时间 else 0 end) as DAY7  
    from SC1 group by ID ID          DAY1        DAY2        DAY3        DAY4        DAY5        DAY6        DAY7
    ----------- ----------- ----------- ----------- ----------- ----------- ----------- -----------
    1           8           8           8           8           8           8           8(1 row(s) affected)
    2005以后可以用PIVOT
      

  2.   

    --> 测试数据:[ta]
    IF OBJECT_ID('[ta]') IS NOT NULL DROP TABLE [ta]
    GO 
    CREATE TABLE [ta]([人员ID] INT,[日期] VARCHAR(3),[工作时间] INT)
    INSERT [ta]
    SELECT 1,'8/1',8 UNION ALL
    SELECT 1,'8/2',8 UNION ALL
    SELECT 1,'8/3',8 UNION ALL
    SELECT 1,'8/4',8 UNION ALL
    SELECT 1,'8/5',8 UNION ALL
    SELECT 1,'8/6',8 UNION ALL
    SELECT 1,'8/7',8
    --------------开始查询----------------------------> 测试数据:[tb]
    IF OBJECT_ID('[tb]') IS NOT NULL DROP TABLE [tb]
    GO 
    CREATE TABLE [tb]([ID] INT,[姓名] VARCHAR(4))
    INSERT [tb]
    SELECT 1,'张三'
    --------------开始查询--------------------------
    DECLARE @sql VARCHAR(max)
    SELECT @sql=ISNULL(@sql+',','')+QUOTENAME([日期]) FROM [ta] 
    GROUP BY [日期]
    EXEC('
    SELECT * FROM 
    (
    SELECT [姓名], [工作时间],[日期] FROM [ta] LEFT JOIN [tb] ON ta.[人员ID]=tb.id
    ) a
    PIVOT(MAX([工作时间]) FOR [日期] IN ('+@sql+')) pit')
    /*
    姓名 8/1 8/2 8/3 8/4 8/5 8/6 8/7
    张三 8 8 8 8 8 8 8
    */
      

  3.   

    检查   @@servername   和   serverproperty( 'servername ')   是否一致