繁体   English   中英

SQL从varchar转换日期格式

[英]SQL Convert Date Format from varchar

我的表中有一个varchar列,其中包含如下所示的数据:

2010-06-24-00.00.00.000000

我需要将其转换为如下所示的Date

6/24/2010

使用T-SQL。 我怎样才能做到这一点? 我正在使用SQL Server 2012。

这是什么日期格式? 2010-06-24-00.00.00.000000

您可以使用FORMAT函数:

FORMAT(datefield,'MM/dd/yyyy')

但是,由于它是VARCHAR,因此要使用FORMAT函数,您必须首先将日期部分作为日期转换:

FORMAT(CAST(LEFT(stringdatefield,10) AS DATE),'MM/dd/yyyy')
select convert(date, left('2010-06-24-00.00.00.000000', 10))

您可以向convert函数添加可选参数。 如果您希望结果为字符串,则只需执行以下操作:

CONVERT(varchar(8),datefield,1)

如果希望结果为DATE类型,则将其强制转换为:

CAST(CONVERT(varchar(8),datefield,1) as DATE)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM