带有表列参数的SWITCHOFFSET

时间:2014-09-28 11:55:42

标签: sql-server sql-server-2008 datetimeoffset

此查询适用于特定参数

SELECT 
   [upload_time]
   , SWITCHOFFSET ('05-10-2012 12:00:00 AM', '+05:00') AS datetimeconversion
FROM 
   [mynews_local_db].[dbo].[upload_news]

当我像这样修改查询时:

 SELECT 
    [upload_time]
    , SWITCHOFFSET ([upload_time], '+05:00') AS datetimeconversion
FROM 
    [mynews_local_db].[dbo].[upload_news]

有错误,所以我必须做,因为我在表格中有很多数据我希望显示所有数据。

1 个答案:

答案 0 :(得分:2)

由于您当前的Column值仅为Datetime,因此在使用此SWITCHOFFSET表达式之前,需要将其转换/转换为DATETIMEOFFSET。

此外,如果您查看SWITCHOFFSET的MSDN文档,此表达式的第一个参数需要Datetimeoffset值。

试试这个......

SELECT [upload_time]
   , SWITCHOFFSET (CAST([upload_time] AS DATETIMEOFFSET), '+05:00') AS datetimeconversion
FROM [mynews_local_db].[dbo].[upload_news]