-1

我正在使用以下方法检索日期和时间:

SELECT convert(varchar, getdate())

它显示我的输出为:

Jul  3 2012  9:34PM

但客户希望时间和上午/下午之间应该有空间,意味着输出应该是这样的:

Jul  3 2012  9:34 PM

提前致谢。

4

1 回答 1

3

一方面,不要在varchar没有长度的情况下使用。你可以STUFF在这里使用,例如

SELECT STUFF(CONVERT(VARCHAR(19), GETDATE()), 18, 0, ' ');

结果:

Jul  3 2012 12:48 PM

请注意,这可能会因语言和区域设置而异。

在 SQL Server 2012 中,这更直观一些,但是当日期 < 10 时,月份和日期之间的额外空间很难解决(或者我对 .NET 的理解format不足):

SELECT FORMAT(GETDATE(), 'MMM d yyyy hh:mm tt');
于 2012-07-03T16:47:57.940 回答