我目前在我的表格中有这种格式:
2015-03-19 10:33:16.983
但我想将其转换为以下格式:
3/18/2015 12:00:00 AM.
我如何获得该格式?
select myDate from myTable
答案 0 :(得分:2)
您正在寻找Convert()功能。
像
这样的东西SELECT CONVERT(varchar(10),GETDATE(),3) + ' ' + CONVERT(varchar(15),CAST(getdate() AS TIME),100)
您可以根据当地情况更改3。 3这里将以DD / MM / YYYY格式表示,即英国和法国本地。
答案 1 :(得分:2)
复制并粘贴此内容并根据需要进行更改:
DECLARE @StartTimestamp datetime
SET @StartTimestamp = CAST((CONVERT(varchar(11), DATEADD(DAY, -1, GETUTCDATE()), 106)) AS datetime)
SELECT CONVERT(varchar, @StartTimestamp, 103) + CONVERT(varchar, @StartTimestamp, 108)
答案 2 :(得分:1)
使用转换
SELECT CONVERT(VARCHAR(25), myDate, 101) + ' ' + CONVERT(VARCHAR(25), myDate, 108) + ' ' + RIGHT(CONVERT(VARCHAR(19),myDate),2)
FROM myTable
这将为您提供所需的确切输出
mm / dd / yyyy hh:mi:ss AM
(或PM取决于时间)
答案 3 :(得分:1)
您需要使用两个convert
的{{1}}和cast
函数:
right
输出: SELECT CONVERT(VARCHAR(10), getdate(), 101) +
' ' + CONVERT(VARCHAR(15), getdate(), 108) +
' ' + RIGHT(CONVERT(VARCHAR(20),getdate()),2)