当我们在sql中转换或转换日期时,请参见下面的sql代码
SELECT CONVERT(VARCHAR(10), GETDATE(), 110) AS [MM-DD-YYYY]
它工作正常,我只想知道上面代码中 110 的含义。它实际上做了什么,有时我们使用 102、112 等。这个数字有什么用。
该数字表示日期和时间样式
您需要查看CAST 和 CONVERT (Transact-SQL)。在这里您可以找到所有这些日期和时间样式的含义。
带有世纪的样式(例如 100、101 等)意味着年份将以yyyy
格式出现。而没有世纪的样式(例如 1,7,10)意味着年份将以yy
格式出现。
您还可以参考SQL Server 日期格式。在这里您可以找到所有带有示例的日期格式。
110
是日期格式的样式值。
当您将表达式从一种类型转换为另一种时,在许多情况下,存储过程或其他例程中需要将数据从 datetime 类型转换为 varchar 类型。Convert function
用于此类事情。该CONVERT()
功能可用于以各种格式显示日期/时间数据。
句法
CONVERT(data_type(length), expression, style)
Style - datetime 或 smalldatetime 转换为字符数据的样式值。将 100 添加到样式值以获得包含世纪 (yyyy) 的四位年份。
示例 1
采用定义以下格式的样式值 108:
hh:mm:ss
现在在以下查询中使用上述样式:
select convert(varchar(20),GETDATE(),108)
示例 2
我们使用定义以下格式的样式值 107:
周一 dd, yy
现在在以下查询中使用该样式:
select convert(varchar(20),GETDATE(),107)
相似地
style-106 for Day,Month,Year (26 Sep 2013)
style-6 for Day, Month, Year (26 Sep 13)
style-113 for Day,Month,Year, Timestamp (26 Sep 2013 14:11:53:300)
10 = mm-dd-yy 110 = mm-dd-yyyy