SQLServer将字符串特定字符串转换为时间格式

嘿伙计,我们必须谈谈这个 SQL 语句。
您会看到这个 CONVERT(DATETIME, '2 01 5 06 1 2 1 2 :02 :2 4 '),它实际上将字符串转换为日期和时间格式。
我以前在处理数据库时也遇到过这种情况。

首先,这个'2 01 5 06 1 2 1 2 :02 :2 4 '是一个字符串,它必须是特定的格式才能正确转换。
格式为 YYYYMMDDH:MM:SS。
你看,年、月、日、时、分、秒。
并非每个部分都可能缺失或不正确。

我之前正在做一个项目,并在 2 01 5 年 6 月 1 2 日有一个这种格式的时间戳。
我们使用这个函数在数据库中存储或检索时间。
当时我是这样写的:
sql 选择转换(日期时间,'2 01 5 06 1 2 1 2 :02 :2 4 ')
执行该语句时,结果是转换后的日期和时间格式,如下所示:
plaintext 2 01 5 -06 -1 2 1 2 :02 :2 4
因此,当您看到 CONVERT(DATETIME, '2 01 5 06 1 2 1 2 :02 :2 4 ') 时,它至少应该采用这种格式,并且不缺少任何数字或符号。
当时我不明白为什么这么严格,后来才知道这个东西是数据库的标准格式,应该遵循。

SQLServer数据库中将日期格式进行转换?急急急

这是一个陷阱。
不要直接使用 GETDATE() 来格式化时间。
首先检查格式代码是否正确。

实用提醒:在执行SQL查询之前,请检查每个格式化函数的输出,以确保格式化符合预期。