SQL Server将字符串转换为datetime

时间:2009-07-16 06:27:01

标签: sql sql-server string datetime

这不是要求如何在MSSQL中将任意字符串转换为日期时间,例如this question

我可以控制字符串格式,但我想知道使用日期字符串更新datetime字段的MSSQL语法是什么。

2 个答案:

答案 0 :(得分:101)

UPDATE MyTable SET MyDate = CONVERT(datetime, '2009/07/16 08:28:01', 120)

有关CAST和CONVERT的完整讨论,包括不同的日期格式选项,请参阅下面的MSDN Library链接:

https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql

答案 1 :(得分:25)

例如,您可以使用

update tablename set datetimefield='19980223 14:23:05'
update tablename set datetimefield='02/23/1998 14:23:05'
update tablename set datetimefield='1998-12-23 14:23:05'
update tablename set datetimefield='23 February 1998 14:23:05'
update tablename set datetimefield='1998-02-23T14:23:05'

您需要注意日/月订单,因为在未指定年份时,这将取决于语言。如果您先指定年份,则没有问题;日期顺序将始终为年 - 月 - 日。