这与How to get time part from SQL Server 2005 datetime in 'HH:mm tt' format
不重复导致该问题的所有答案都在下午12:06返回(没有空格且需要空格)
我试图从SQL GETDATE()
我正在尝试
SELECT LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100), 7))
但它正在返回
12:06PM
我需要下午12:06(上午或下午之前的空间)..
搜索了很多但却失败了......
答案 0 :(得分:6)
对于上面的SQL 2012:
SELECT FORMAT(GETDATE(), 'h:mm tt', 'en-US')
答案 1 :(得分:3)
试试这个
SELECT Replace(Replace(LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100), 7)),'PM',' PM'),'AM',' AM')
答案 2 :(得分:2)
试试这个:
SELECT substring(CONVERT(varchar(20), GetDate(), 9), 13, 5) +
' ' +
substring(CONVERT(varchar(30), GetDate(), 9), 25, 2)
答案 3 :(得分:2)
您可以使用:
select CONVERT(VARCHAR(5), GETDATE(), 108) + ' ' +
RIGHT(CONVERT(VARCHAR(30), GETDATE(), 9),2)
答案 4 :(得分:1)
经过很多实践最短的答案后我得到了..
SELECT CONVERT(VARCHAR(11),
STUFF(RIGHT(
CONVERT(VARCHAR,GETDATE(),100 ) ,7),
6, 0, ' '))
全部谢谢
答案 5 :(得分:0)
格式(GETDATE(),' h:mm tt',' en-US')