【问题标题】:Convert self-defined/custom datetime format to datetime SQL Server [duplicate]将自定义/自定义日期时间格式转换为日期时间 SQL Server [重复]
【发布时间】:2019-12-26 09:23:06
【问题描述】:

在 PostgreSQL 中,我可以将日期时间转换为时间戳,如下所示

to_timestamp('2019-12-20-15-12-42','YYYY-MM-DD-hh24-mi-ss')::timestamptz

如何在 SQL Server 中执行此操作?我正在使用 SQL Server 2016。

select FORMAT(CAST('2019-12-20-15-12-42' AS datetime), N'YYYY-MM-DD HH:MI:SS')

此查询引发错误:

将 varchar 数据类型转换为 datetime 数据类型导致值超出范围。

【问题讨论】:

标签: sql sql-server datetime-format


【解决方案1】:

SQL 服务器没有将自定义日期时间字符串转换为 DATETIME 格式的内置函数。

SELECT SUBSTRING(literal, 1, 10) + ' ' + REPLACE(SUBSTRING(literal, 12, 8), '-', ':')

fiddle

您可以使用此表达式并创建自己的函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-17
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    相关资源
    最近更新 更多