gpt4 book ai didi

sql-server - SQL Server 特定日期格式 DD MM YYYY

转载 作者:行者123 更新时间:2023-12-04 02:16:09 24 4
gpt4 key购买 nike

我有一个日期格式要求,最初看起来很简单,但事实证明这很麻烦。我正在使用 SQL Server 2012,但需要支持 2008。

查看引用资料 ( https://msdn.microsoft.com/en-GB/library/ms187928.aspx ) 我可以使用 CONVERT 将日期时间格式化为多种不同格式的字符串,但如果没有解决方法,我似乎无法获得 DD MM YYYY。是否有我在某处遗漏的未包含在该引用中的代码?

我可以看到以下变通办法,但如果有一种明智的方法可以使用 T-SQL 来实现,我显然不热衷于使用这些变通办法。

SELECT REPLACE(CONVERT(varchar, GETDATE(), 103), '/',' ')
SELECT RIGHT('0' + CONVERT(varchar, DATEPART(dd, GETDATE())), 2) + ' ' + RIGHT('0' + CONVERT(varchar, DATEPART(mm, GETDATE())), 2) + ' ' + CONVERT(varchar, DATEPART(yyyy, GETDATE()))

根据评论,示例输入日期为 2016 年 6 月 21 日(年 = 2016,月 = 06,日 = 21),所需的输出为 21 06 2016。

最佳答案

我会接受你的第一个建议,这似乎是最合适的;

制作一些测试数据;

IF OBJECT_ID('tempdb..#Dates') IS NOT NULL DROP TABLE #Dates
GO
CREATE TABLE #Dates (OriginalDate datetime)
INSERT INTO #Dates (OriginalDate)
VALUES
('2016-01-01')
,('2016-05-06')
,('2016-08-09')
,('2016-12-25')

查询;

SELECT
OriginalDate
,REPLACE(CONVERT(varchar,OriginalDate,103),'/',' ') NewDate
FROM #Dates

结果;

OriginalDate                NewDate
2016-01-01 00:00:00.000 01 01 2016
2016-05-06 00:00:00.000 06 05 2016
2016-08-09 00:00:00.000 09 08 2016
2016-12-25 00:00:00.000 25 12 2016

关于sql-server - SQL Server 特定日期格式 DD MM YYYY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37942456/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com