SQL Server 中的自定义日期/时间格式
目标: 将日期时间字段格式化为另外两列: ' DDMMM' 和 'HHMMT'(其中“T”代表“A”代表上午,“P”代表p.m.).
场景:给定一个格式为“YYYY-MM-DD HH:MM:SS.S”的日期时间字段,所需的输出为:
解决方案:
不要使用存储过程,请考虑使用函数来封装逻辑。
DECLARE @myTime AS DATETIME; SET @myTime = GETDATE(); SELECT @myTime AS OriginalTime; SELECT DATENAME(DAY, @myTime) + SUBSTRING(UPPER(DATENAME(MONTH, @myTime)), 0, 4) AS 'DDMMM';
输出:
OriginalTime DDMMM ---------------------- -------------------- 2023-03-08 13:19:12.0 08MAR
注意:
其他提示:
参考各种场景下有用的日期转换函数:
-- Getting Parts of a DateTime SELECT FLOOR(CAST(GETDATE() AS FLOAT)) AS DateOnly, GETDATE() - FLOOR(CAST(GETDATE() AS FLOAT)) AS TimeOnly; -- Relative Dates SELECT GETDATE() AS CurrentTime, DATEADD(dd, 1, GETDATE()) AS Tomorrow; SELECT GETDATE() AS CurrentTime, DATEADD(hh, 1, GETDATE()) AS InOneHour; -- Yearly SELECT DATEADD(yy, -1, GETDATE()) AS LastYear, DATEADD(yy, 1, GETDATE()) AS NextYear; SELECT DATEADD(dd, DATEDIFF(dd, 0, GETDATE()), 0) AS CurrentYearStart, DATEADD(ms, -4, DATEADD(dd, DATEDIFF(dd, 0, GETDATE()) + 1, 0)) AS CurrentYearEnd;
以上是如何将 SQL Server 中的日期时间自定义格式为'DDMMM”和'HHMMT”?的详细内容。更多信息请关注PHP中文网其他相关文章!