内容纲要
概要描述
本文主要介绍,Argodb中不同的时间格式返回值如何获取。
标准推荐格式:yyyy-MM-dd HH:mm:ss
详细说明
以 ‘2026-12-31 14:48:33.678’ 为例:
| 日期格式 | 对应值 | 解释说明 |
|---|---|---|
| y | 2026 | yyyy含义一致,均表示完整年份 |
| yy | 26 | 取年份的后两位 |
| YY | 27 | 慎用,表示“week-based-year”(基于周的年),其取值取决于日期所在周是否跨越公历年份。 |
| yyyy | 2026 | 小写yyyy代表年份 |
| YYYY | 2027 | 慎用,YYYY是week-based-year,表示:当天所在的周属于的年份,一周从周日开始,周六结束,只要本周跨年,那么这周就算入下一年,所以2026年12月31日那天在这种表述方式下就已经 2027 年了,当使用yyyy的时候,就还是 2026 年 |
| MM | 12 | 大写MM代表月份 |
| MMM | Dec | 英文月份缩写 |
| W | 5 | 返回是当月的第几周 |
| dd | 31 | 返回是当月的第几天 |
| DD | 365 | 通常表示年份中的天数(1-366) |
| HH | 14 | 代表24小时进制 |
| hh | 02 | 代表12小时进制 |
| hh a | 02 PM | 代表12小时进制及上下午AM/PM |
| mm | 48 | 小写mm代表分钟 |
| ss | 33 | 小写s代表秒 |
| XXX | +08:00 | 获取时区偏移量 |
WITH tb AS (SELECT '2026-12-31 14:48:33.678' AS dt FROM system.dual)
SELECT
date_format(dt,'y') AS 'y', --2026
date_format(dt,'yy') AS 'yy', --26
date_format(dt,'YY') AS 'YY', --27
date_format(dt,'yyyy') AS 'yyyy', --2026
date_format(dt,'YYYY') AS 'YYYY', --2027
date_format(dt,'MM') AS 'MM', --12
date_format(dt,'MMM') AS 'MMM', --Dec
date_format(dt,'W') AS 'W', --5
date_format(dt,'dd') AS 'dd', --31
date_format(dt,'DD') AS 'DD', --365
date_format(dt,'HH') AS 'HH', --14
date_format(dt,'hh') AS 'hh', --02
date_format(dt,'hh a') AS 'hh AM/PM', --02 PM
date_format(dt,'mm') AS 'mm', --48
date_format(dt,'ss') AS 'ss', --33
date_format(dt,'XXX') AS 'XXX' --+08:00
FROM tb;