我有一个YYYYMMDDHHTT时间格式的日期,如何将其转换为24小时的日期时间(即SQL服务器DATETIME
)
示例:201710031035AM
所需:2017-10-03 10:35:00.000
答案 0 :(得分:1)
我会拆分并连接旧的字符串格式,以便SQL可以将其识别为日期字符串
SELECT CONVERT(datetime, CONCAT(
SUBSTRING(oldFormat, 5, 2), ' ',
SUBSTRING(oldFormat, 7, 2), ' ',
SUBSTRING(oldFormat, 1, 4), ' ',
SUBSTRING(oldFormat, 9, 2), ':',
SUBSTRING(oldFormat, 11, 4)
), 100)
其中100
是日期时间格式' mon dd yyyy hh:miAM(或PM)'。或者您可以拆分日期时间部分,然后通过DATETIMEFROMPARTS
函数作为整数传递。只需确保所有旧值始终合格!