我认为这应该是一项相当容易的任务,但不知怎的,它失败了。我将日期存储在像dd-mm-yyyy
这样的文本字段中,并使用CONVERT(datetime, [MyDateAsTextField], 105)
将它们转换为DateTime类型。但我得到的输出是yyyy-dd-mm 00:00:00.000
,我不知道为什么。我错过了什么?
答案 0 :(得分:3)
您将输出作为用于输出的正确格式的日期/时间。日期和时间以内部格式存储。 convert()
在字符串和内部格式之间转换值。
如果您希望以不同的形式输出,可以使用convert(varchar(), . . .)
来获取所需的格式。
但更重要的是,您不应存储日期/时间值字符串。您应该使用内置类型。它们提供了更多功能。
答案 1 :(得分:0)
不使用数据类型作为日期时间而是使用Char(10)或Varchar(10)以及日期样式(如105)用于dd-mm-yy(意大利语)。
例如为: CONVERT(Char(10),getdate(),105)
输出将是: 20-02-2015