【发布时间】:2026-01-25 11:15:01
【问题描述】:
我正在尝试将 varchar 日期转换为日期时间字段并且非常困难。它给了我:
从字符串转换日期和/或时间时转换失败。
或
将 varchar 数据类型转换为 datetime 数据类型导致值超出范围。
我有以下两种日期时间格式:
日期字段类似于
21-12-2009、05-10-2005等日期字段类似于
19-03-2018 14:59
select cast(convert(varchar,Stg_hw.date_of_birth,110)as date)
from Stg_Height_and_Weight Stg_hw
where Stg_hw.person_id = 1620458
select CONVERT(datetime,LEFT(date_of_birth,2)+SUBSTRING(Stg_hw.date_of_birth,4,2)+SUBSTRING(Stg_hw.date_of_birth,7,4))
from Stg_Height_and_Weight Stg_hw
where Stg_hw.person_id = 1620458
select cast(Stg_hw.date_of_birth as date)
from Stg_Height_and_Weight Stg_hw
where Stg_hw.person_id = 1620458
【问题讨论】:
标签: sql sql-server tsql datetime-format sql-server-2017