我有一个表格,我可以在其中选择客户购买事件,它将在 ColumnA
中显示购买日期(以及时间),格式如下:
2012-08-06 10:06:42.223
YYYY-MM-DD HH:MM:SS
我只想显示日期,所以我添加了一个 LEFT 函数,如下所示:
LEFT(ColumnA, 11)
这将消除时间,但现在显示日期,我将得到:
Aug 06 2012
我想以数字格式显示它,但显示为MM/DD/YYYY
,所以它看起来像:
08/06/2012
MM/DD/YYYY
有什么想法可以在 T-SQL 中做到这一点吗?
最佳答案
你只需要转换它:
SELECT convert(char(10), getdate(), 101)
或者从您的 table 上:
SELECT convert(char(10), yourDate, 101)
FROM yourTable
这是一个方便的网站,其中包含转换:
How to format datetime & date in Sql Server 2005
或者,如果您只想要没有时间的 Date 值,您可以随时使用 2012-08-06 00:00:00.000
的结果:
declare @yourDate datetime
set @yourdate = '2012-08-06 10:06:42.223'
select DateAdd(day, DateDiff(day, 0, @yourdate), 0)
或者从您的表中:
select DateAdd(day, DateDiff(day, 0, yourDateField), 0)
from yourTable
关于T-SQL 日期显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11907252/