0 嘿,我有时间列和数据类型的日期..默认值为GETDATE(),但像2011-04-24SQL SERVER GETDATE()转换问题 这个返回的格式,但我要像2011年4月24日我怎样才能转换该格式? 什么是数值格式? 来源 2011-04-24 PsyGnosis +0 在SQL Server之外发生SQL Server日期值(二进制)转换为文本表示形式。你有一些应用程序从SQL Server中读取数据,然后显示文本表示?如果是这样,你的问题的答案取决于应用程序写入哪种语言。 – 2011-04-24 15:01:09
1 SQL Server date列没有关联的格式。 您可以在将date转换为varchar列时指定格式。请参阅MSDN页面convert。从MSDN,104 MM.DD.YYYY,所以,你可以: select convert(varchar(12),getdate(),104) 这将打印24.04.2011。 来源 2011-04-24 14:54:26 Andomar +1 你为什么使用varchar(12)? – 2011-04-24 14:58:36 +0 是否必须是varchar默认值?选择convert(varchar(12),getdate(),104) – PsyGnosis 2011-04-24 15:20:42
2 GETDATE()是一个日期时间。这没有特定的格式。如果你想要一个特定的格式,你必须把它转换成一个varchar。 select convert(varchar(10),getdate(),104) 有关不同转换代码here的更多信息。 来源 2011-04-24 14:52:24 +0 +1,'varchar(10)'更好:) – Andomar 2011-04-24 15:24:52 +0 但是'char(10)'会更好。 – 2011-04-24 16:12:49
在SQL Server之外发生SQL Server日期值(二进制)转换为文本表示形式。你有一些应用程序从SQL Server中读取数据,然后显示文本表示?如果是这样,你的问题的答案取决于应用程序写入哪种语言。 – 2011-04-24 15:01:09