使用样式20与120对T-SQL将日期时间转换为varchar

时间:2018-07-18 22:37:40

标签: sql-server tsql

我发现20120样式翻译之间没有区别。从我阅读的内容来看,似乎没有什么区别。

每个CAST and CONVERT documentation都注明:

  

默认值(0或100、9或109、13或113、20或120和21   或121)总是返回世纪(yyyy)。

如您所见,它们确实返回相同的结果:

SELECT CONVERT(VARCHAR(10), GETDATE(), 20) AS 'exampleOne'
SELECT CONVERT(VARCHAR(10), GETDATE(), 120) AS 'exampleTwo'

enter image description here


为什么有两个 style 翻译选项,以后我应该使用哪一个?如果它是完全可选的(用户首选项),这也是一个很好的答案,我很好奇,因为我已经在我们的代码中看到了两个实例,并且想知道附加的 style 值背后的原因是什么。在文档中,您可以看到在一些实例中多个值可以用于可选的 style 参数。

1 个答案:

答案 0 :(得分:0)

正如您已经从文档中阅读的一样:没有区别。我认为MS提供了两个可能的值只是因为在所有其他情况下,两个值都是可能的(x和100 + x)。