我怎样才能从datetime列获取日期?
这个问题在这里已经有了答案:
SELECT CONVERT(VARCHAR(10), GETDATE(), 101)
返回
11/15/2013
SELECT CONVERT(VARCHAR(10), GETDATE(), 120)
返回
2013-11-15
最有效的方法是保持日期类型而不是将其转换为字符串:
SELECT CONVERT(DATE, GETDATE());
如果你真的想要出于任何原因输出字符串:
SELECT CONVERT(CHAR(10), GETDATE(), 120);
(没有理由使用VARCHAR
,并且获取字符串的特定长度的方式是指定字符串的长度,请阅读此文章。)
关于拟议副本的接受和高票提出的答案 - 我相信最终会由于吸引力因素而最终关闭这个问题 - 并没有充分解决这个问题。
它使用的技术是SQL Server 2000和SQL Server 2005的高效方法,但不适用于SQL Server 2008+,因为上述转换比日期数学更有效(差异可能可以忽略不计,但它的原则是事情)。
它仍然会在输出中返回时间(仅在午夜而不是现在)。 这里的OP不希望包含在输出中的时间(无论是实时还是午夜等)。
因为你在SQL Server 2008上
SELECT cast(GETDATE() as DATE)
链接地址: http://www.djcxy.com/p/94375.html
上一篇: How can i obtain the date only from the datetime column?