2

我有一个表格,我在其中选择客户购买活动,它将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 中做到这一点吗?

4

2 回答 2

3

你只需要转换它:

SELECT convert(char(10), getdate(), 101)

或从您的桌子上:

SELECT convert(char(10), yourDate, 101)
FROM yourTable

这是一个方便的网站,其中包含转换:

如何在 Sql Server 2005 中格式化日期时间和日期

或者,如果您只想要没有时间的 yourDate 值,您可以随时使用 which 结果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
于 2012-08-10T18:33:26.640 回答
1

试试这个:

SELECT CONVERT(VARCHAR(10), ColumnA, 101)
FROM MyTable
于 2012-08-10T18:31:40.277 回答