【发布时间】:2014-12-02 16:10:23
【问题描述】:
由于某些原因,以下查询返回相同的结果,即使它们不应该
SELECT CONVERT(DATE, GETDATE(),101)
SELECT CONVERT(DATE, GETDATE(),102)
SELECT CONVERT(DATE, GETDATE(),103)
SELECT CONVERT(DATE, GETDATE(),104)
SELECT CONVERT(DATE, GETDATE(),105)-- Ad Infinitum (Tested up to 140)
结果
2014-10-07
以防今天的日期是 2014 年 10 月 7 日
- 根据http://msdn.microsoft.com/es-es/library/ms187928.aspx 应该只有 131 种样式,是不是我没有收到与 132-140 相关的错误?
从技术上讲,我用美式英语安装了 SQL Server 2014,并尝试使用它来更改它
set dateformat dmy
但我不知道它是否有所作为。
我是否搞砸了我的安装,我应该修复它,卸载并重新安装,完全格式化我的机器还是不相关。
发布的第一个问题,我相信我遵守了规则,据我所知,如果我犯了错误,请告诉我。
编辑:
SELECT CAST (GETDATE() AS DATE)
结果相同。
【问题讨论】:
-
好的 - 但你还没有说你要寻找什么 - 你想要什么输出?您看过 SQL Server 2014 的新
FORMAT函数了吗? -
我猜你误解了日期(和日期时间)在 SQL Server(以及几乎任何其他编程语言)中的存储方式——它们没有附加某种格式信息- 它们只是日期信息。您看到的字符串 是当您要求工具(例如管理工作室)显示 日期信息时发生的情况。但不要将 management studio 应用的字符串格式与存储在
date列或变量中的实际 data 混淆。 -
对不起,如果我不够清楚,我的目标是得到除我得到的结果之外的任何结果,感谢您指出我的错误。
标签: sql-server function date datetime sql-server-2014