将日期时间转换为Varchar
问题描述:
我正在使用Sql Server 2008中的查询将日期迁移到其他表中。将日期时间转换为Varchar
源表具有一个带有DateTime的列,并且目标列具有varchar列。我需要将DateTime值转换为varchar。
源列有日期时间:2007-02-13 00:00:00.000
目标列具有的Varchar:mm/dd
格式
答
让我与前言:
这是一个可怕IDEA
如果数据代表一个日期,它需要一个日期数据类型!
如果你坚持前进,不过,你可以做线沿线的东西:
SELECT CAST(MONTH(Datefield) as varchar) + '/' + CAST(DAY(Datefield) as varchar)
答
你可以使用类似这样
编辑
SELECT CAST(DATEPART(MM, YourDateTimeField) AS VARCHAR(2)) + '/' + CAST(DATEPART(DAY, YourDateTimeField) AS VARCHAR(2))
+0
谢谢巴里,现在已经修好了 –
答
你可以做
SELECT CONVERT(VARCHAR(10),YourDate,101) NewDate
FROM YourTable
如果您正在处理日期,为什么将它们视为任何*其他*而不是日期时间值,尤其是在数据库中?人们遇到的绝大多数问题都是在他们将它们转换为字符串时发生的。 –