将varchar转换为具有millisec的sql中的datetime
发布时间:2021-03-06 14:03:57 所属栏目:MsSql教程 来源:网络整理
导读:我有一个列abc varchar(100),其数据类似于2011-09-26 16:36:57.810000 我想将此列转换为DATETIME … 但做一个 Convert(DATETIME,abc,120) 给出了这个错误: Conversion failed when converting date and/or time from character string. 任何人都可以帮
我有一个列abc varchar(100),其数据类似于2011-09-26 16:36:57.810000 我想将此列转换为DATETIME … 但做一个 Convert(DATETIME,abc,120) 给出了这个错误:
任何人都可以帮我将我的varchar格式转换为SQL Server 2008中的datetime吗? 提前致谢 解决方法您可以使用样式121但是您只能使用3位数毫秒(即yyyy-mm-dd hh:mi:ss.mmm(24h))格式.declare @abc varchar(100)='2011-09-26 16:36:57.810' select convert(datetime,@abc,121) 因此,您可以通过将varchar字段限制为23个字符进行排序,然后再转换为: declare @abc varchar(100)='2011-09-26 16:36:57.810000' select convert(datetime,convert(varchar(23),@abc),121) 或者使用Left()函数获取前23个字符: select convert(datetime,left(@abc,23),121) 尽量避免将日期存储为字符串. (编辑:徐州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读