我想要一个日期时间变量,它将具有12小时的日期时间格式。
下面的示例在12小时内转换日期,但没有帮助,因为它是VARCHAR
格式,如果尝试在datetime中转换它显示为2016-03-08 00:00:00.000-
declare @t datetime = NULL
set @t = '2016-03-08 00:00:00'
SELECT CONVERT(VARCHAR, @t, 100) AS DateTime_In_12h_Format
我想要一个变量,它将保持12小时格式,就像这样
declare @t datetime = NULL
set @t = '2016-03-08 00:00:00'
set @t = CONVERT(datetime, @t, 100)
select @t -> this should be -> Mar 8 2016 12:00AM
答案 0 :(得分:0)
如果您想转换当前日期时间,例如:
SELECT CONVERT(VARCHAR, getdate(), 100) AS DateTime_In_12h_Format
您可以将所需的列放在查询中(例如示例中的tdate),而不是getdate()。如果你想要12小时的时间而不是日期和时间使用substring / right来分隔它们。看来你已经知道如何=)。
This page列出了每个日期时间转换。如果您需要其他类型的转换,这非常方便。
答案 1 :(得分:0)
再宣布一个varchar
以保存新的datetime
declare @t datetime = NULL
declare @t1 varchar(20) = NULL
set @t = '2016-03-08 00:00:00'
set @t1 = CONVERT(varchar(20), @t, 100)
select @t1 as DateTime_In_12h_Format