将具有不同日期格式的列转换为仅一种格式

时间:2015-01-06 23:16:09

标签: sql sql-server-2008

我有一个3-4种不同日期格式的列。如何将其转换为仅一种格式?

列[DateAdded]

中的一些示例
2004-04-19  13:36:52
28.02.2005  09:29:34
01.09.2013  

我试图将其转换为格式:2004-04-19 13:36:52
并且不会丢失日期。

1 个答案:

答案 0 :(得分:1)

日期的格式只是一种表现形式。您必须将DateTime用于商店日期,如果您已将日期存储在varchar中,则可以:

  1. 更改表并为正确格式化的日期添加列
  2. 使用以下条件进行更新:

    date_col like ('____-__-__ __:__:__')
    date_col like ('__.__.____ __:__:__')
    date_col like ('__.__.____')
    

    角色' _'意味着任何角色(但只是一个)的功能相同。

  3. 使用CONVERT函数将VARCHAR转换为DATETIME,请参阅:http://www.w3schools.com/sql/func_convert.asp

  4. 将日期时间值存储在新列中。