当前位置:  开发笔记 > 数据库 > 正文

TSQL将HHMMSS的VARCHAR转换为TIME

如何解决《TSQL将HHMMSS的VARCHAR转换为TIME》经验,为你挑选了1个好方法。



1> John Cappell..:
Declare @YourTable table (TimeStr varchar(25))
Insert Into @YourTable values
('151200'),
('085800'),
('080100'),
('210100'),
('083300')


Select *
      ,AsTime = cast(stuff(stuff(TimeStr,5,0,':'),3,0,':') as time)
 From @YourTable

退货

TimeStr AsTime
151200  15:12:00.0000000
085800  08:58:00.0000000
080100  08:01:00.0000000
210100  21:01:00.0000000
083300  08:33:00.0000000

编辑:

根据您的版本,考虑将时间值存储在varchar中(这意味着您可能会有假数据),可以使用:

try_convert(time,stuff(stuff(TimeStr,5,0,':'),3,0,':'))

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有