首页 > 解决方案 > 将日期格式化为 MM/DD/YYYY,去除秒和毫秒,并从军用时间转换为标准时间 SQL

问题描述

我有一个领域Run_time。我想将日期格式化为MM/DD/YYYY,删除秒和毫秒,并从军用时间转换为标准时间 SQL。
例如:

Select Run_time from Table

目前的输出是这样的:

2018-06-04 15:18:56.333

我希望输出如下所示:

06/04/2018 3:18pm

任何帮助将不胜感激!

谢谢你!〜亚当

标签: sqlsql-serversql-server-2008

解决方案


亚当,

格式化日期的正确位置是在表示层,即前端应用程序中。但是,由于问题不是在哪里做,而是如何在 t-sql 中做,我们将按原样回答这个问题。

您可以在 SQL Server 中转换日期的格式有很多种(参考下文),但对于这个确切的结果,您需要连接其中的 2 个,因为提供 mm/dd/yyyy 格式的日期的格式不没有 hh:mm AM/PM 格式。这是 t-sql:

SELECT  
    CONVERT(CHAR(10), Run_time ,101) + ' '+ LTRIM(RIGHT(CONVERT(CHAR(19), Run_time ,0),7))
FROM Table

这是一个指向页面的链接,它向您展示了 t-sql 中的不同转换格式:

https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql?view=sql-server-2017


推荐阅读