2

如何消除查询中的秒部分。我使用 DateADD 将秒部分显示为 0 但我只想忽略它。我只想显示日期 hours: minutes 我使用了这个查询,它返回了类似这样的信息

SELECT DATEADD(minute, DATEDIFF(minute,0,GETDATE()), 0)

2013-09-30 13:03:00.000

但我只想要2013-09-30 13:03一部分。

谁能帮我?

4

2 回答 2

4

如果您正在处理一种格式,那么您最终必须得到的是一个字符串而不是一个datetime值 - datetimes(或datetime2s)没有格式。

因此,您需要转换为字符串。没有与您要求的格式CONVERT完全匹配的格式,但是如果您进行转换并且没有提供足够的空间,它会截断结果:

SELECT CONVERT(varchar(16),GETDATE(),120)
于 2013-09-30T08:19:17.343 回答
2

您不能保留 datetime2 格式并截断其中的一部分。
您可以尝试以下方法之一:

SELECT CAST(GETDATE() as date)
SELECT CONVERT(varchar(16),GETDATE(),120)

如果这仍然不能完全满足您的需求,您可以在这篇文章中看到许多其他可能的转换。

于 2013-09-30T08:15:53.373 回答