sql-server - T-SQL CONVERT datetime to varchar using style 20 vs 120
问题描述
我认为vs的风格翻译没有区别。从我读过的内容来看,似乎应该没有区别。20
120
根据CAST 和 CONVERT 文档,请注意:
默认值(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'
为什么有两种风格翻译选项,我应该使用哪一种?如果它是完全可选的(用户偏好)也是一个很好的答案,我只是好奇,因为我已经看到我们的代码中使用了这两个实例,我想知道附加样式值背后的原因是什么。在文档中,您可以看到在少数情况下,可选样式参数可以使用多个值。
解决方案
正如您已经从文档中阅读的那样:没有区别。我认为 MS 提供了两个可能的值,只是因为在所有其他情况下,也可能有两个值(x 和 100+x)。
推荐阅读
- c++ - 我得到一个 Intellisence “没有重载函数的实例 rotate() 与参数列表匹配。我该如何解决
- automated-tests - nightwatch.js / Saucelabs - click() 不工作 [在运行 .click() 命令时发生错误
] - python - 设置 Plotly 热图范围
- azure - 是否可以检索存储队列中的所有消息,即使是分批?
- sql - ORA-01403: 在 oracle 中在线重新定义表期间未找到数据
- angular - 将多个输入参数分配给 Angular Validator
- c# - 如何使用 HTTPclient Get 方法从响应正文中读取数据?
- android - Xamarin.Android 将图像保存到图库相册
- c++ - 如何修复由于 C++ includePath 而导致的“没有这样的文件或目录...”错误
- r - 创建新列以显示基于其他列组合的重复值