首页 > 解决方案 > 如何在 SQL Server 中将日期时间值插入为 dd-mmm-yyyy hh:mm:ss AM/PM 格式

问题描述

我是 SQL Server 的新手,我想按以下格式dd-mmm-yyyy hh:mm:ss AM/PM( 31-May-2019 11:06:37 PM) 插入日期时间值。

为此,我使用了以下代码:

REPLACE(CONVERT(NVARCHAR, (GETDATE()), 106), ' ', '-') + ' ' + 
      LTRIM(RIGHT(CONVERT(VARCHAR(30), GETDATE(), 22), 11)) 

输出:2019 年 5 月 31 日晚上 11:06:37

列数据类型:datetime

当我执行以下查询时,我得到了预期的结果,但是在插入语句中使用它时,它存储的值如下

2019-05-31 23:02:47.000

格式变了。

谁能帮我解决这个问题?

标签: sqlsql-serverstored-procedures

解决方案


最好将其存储为日期时间。现在您可以根据需要在选择/报告中显示它convert()。检查此备忘单

您还可以使用format()

SELECT FORMAT(cast('2019-05-31 23:02:47.000' as datetime), 'dd-MMM-yyyy hh:mm:ss tt') as datetime

推荐阅读