【问题标题】:Convert format date string to datetime using T-SQL in SQL Server 2008在 SQL Server 2008 中使用 T-SQL 将格式日期字符串转换为日期时间
【发布时间】:2018-03-11 03:18:41
【问题描述】:

如何将此格式转换为日期时间?我正在使用 SQL Server 2008。

字符串可以是d/m/aaaadd/m/ddddd/mm/aaaadd/mm/aaaa,我需要将这些格式转换为datetime。有什么想法吗?

【问题讨论】:

  • CONVERT(datetime, , 103) ?
  • 它的作品!谢谢!

标签: sql sql-server-2008 tsql datetime


【解决方案1】:

您可以将CONVERT() 用作:

DECLARE @S1 VARCHAR(20) = '1-1-2017';
DECLARE @S2 VARCHAR(20) = '11/1/2017';
DECLARE @S3 VARCHAR(20) = '1/11/2017';
DECLARE @S4 VARCHAR(20) = '11/11/2017';


SELECT CONVERT(DATETIME, @S1 , 104) AS S1,
       CONVERT(DATETIME, @S2 , 104) AS S2,
       CONVERT(DATETIME, @S3 , 104) AS S3,
       CONVERT(DATETIME, @S4 , 104) AS S4;

结果:

+---------------------+---------------------+---------------------+---------------------+
|         S1          |         S2          |         S3          |         S4          |
+---------------------+---------------------+---------------------+---------------------+
| 01.01.2017 00:00:00 | 11.01.2017 00:00:00 | 01.11.2017 00:00:00 | 11.11.2017 00:00:00 |
+---------------------+---------------------+---------------------+---------------------+

【讨论】:

  • 它可以工作,但为什么你有104作为参数?这对我来说没有意义,而且没有这个附加参数也可以工作。
猜你喜欢
  • 2013-02-24
  • 2019-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-26
相关资源
最近更新 更多