t-sql只将日期时间转换为NO SECONDS

时间:2015-10-19 14:27:51

标签: sql sql-server-2008 tsql date datetime-format

有许多t-sql CONVERT字符串可以生成各种各样的日期和/或时间字符串。但我找不到无需日期和秒数的解决方案。

我们只想从datetime字段返回时间,并消除秒数。如果秒被截断或舍入都没关系,但我们需要显示秒数。

    desired results- from any DATETIME field
     10:00 AM
     11:00 AM
      4:59 PM

任何和所有见解或建议赞赏!!

3 个答案:

答案 0 :(得分:2)

会这样做吗?

select CONVERT(varchar(15),CAST(GETDATE() AS TIME),100)

只需使用日期变量更改GETDATE()

答案 1 :(得分:1)

试试这个:

SELECT LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100), 7))

DATETIME字段改为GETDATE()

答案 2 :(得分:0)

If you want a space then the AM /PM try this:

SELECT
Left(CONVERT(varchar(15),CAST(GETDATE() AS TIME),100),(len(CONVERT(varchar(15),CAST(GETDATE()  AS TIME),100))-2)) +' ' +  right((CONVERT(varchar(15),CAST(GETDATE()  AS TIME),100)),2) as NiceTimeAMPm

NiceTime
7:35 AM

3:00 PM