再所有字符串常量前加 NSELECT N'Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
 ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
 FROM vw_ChargeableUserReport
 WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
 GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName
 UNION
 SELECT N'Non-Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
 ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
 FROM vw_NonChargeableUserReport
 WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
 GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName

解决方案 »

  1.   

    出个馊主意,把UNION前后的语句倒过来写试试: SELECT 'Non-Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
     ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
     FROM vw_NonChargeableUserReport
     WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
     GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName
     UNION
    SELECT 'Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
     ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
     FROM vw_ChargeableUserReport
     WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
     GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName
      

  2.   

    我也遇到过,误大误撞解决的,试试用union all
    SELECT 'Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
     ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
     FROM vw_ChargeableUserReport
     WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
     GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName
     UNION all
     SELECT 'Non-Chargeable Activities' AS Type, Projectname, ProjectID, SubmiterID, ProjectCode, 
     ProjectType, UserName, SUM(Duration) AS TotalDuration, ClientName
     FROM vw_NonChargeableUserReport
     WHERE CAST(convert(char(10),EntryDate,120) as DATETIME) between '2002-04-14' and '2002-04-20' and DepartmentID = 1
     GROUP BY Projectname, ProjectID, SubmiterID, ProjectCode, ProjectType, UserName, ClientName
      

  3.   

    问题我找到了,就是两个SQL SERVER的字符排序规则不一样,所以不能把中文的数据库里的数据导到英文里。
      

  4.   

    最有用的一句话:是两个SQL SERVER的字符排序规则不一样,所以不能把中文的数据库里的数据导到英文里。