如果时间字符串为 yyyyMMddHHmm这种格式呢
时间: 2023-12-20 20:05:54 浏览: 193
如果时间字符串为 yyyyMMddHHmm 这种格式,可以使用 SUBSTRING 函数和 CONVERT 函数将其转换为 datetime 数据类型。
以下是一个示例:
```
DECLARE @datetimeString varchar(12)
SET @datetimeString = '202109011230'
SELECT CONVERT(datetime,
SUBSTRING(@datetimeString, 1, 4) + '-' +
SUBSTRING(@datetimeString, 5, 2) + '-' +
SUBSTRING(@datetimeString, 7, 2) + ' ' +
SUBSTRING(@datetimeString, 9, 2) + ':' +
SUBSTRING(@datetimeString, 11, 2)
)
```
这里首先使用 SUBSTRING 函数将年月日时分分别提取出来,然后使用字符串拼接符号将它们拼接成标准的 yyyy-MM-dd HH:mm 格式,最后使用 CONVERT 函数将其转换为 datetime 数据类型。
输出结果为:
```
2021-09-01 12:30:00.000
```
需要注意的是,这里的转换假设输入字符串的时间部分为整点,秒的部分为 00。如果时间字符串中包含秒,也可以在拼接时将其提取出来并加入到格式化字符串中。
阅读全文