date_part
date_part('field', source)
描述:date_part函数基于传统的Ingres函数实现(该函数等效于SQL标准函数extract)。
参数:field参数是一个字符串,而不是一个名称。有效的field与extract一致,详细信息请参见EXTRACT。
示例:
1 2 3 4 5 | gaussdb=# SELECT date_part('day', TIMESTAMP '2001-02-16 20:38:40'); date_part ----------- 16 (1 row) |
1 2 3 4 5 | gaussdb=# SELECT date_part('hour', INTERVAL '4 hours 3 minutes'); date_part ----------- 4 (1 row) |
表1 用于日期/时间格式化的格式显示了可以用于格式化日期和时间值的格式。
类别 | 格式 | 描述 |
|---|---|---|
小时 | HH | 一天的小时数(01~12) |
HH12 | 一天的小时数(01~12) | |
HH24 | 一天的小时数(00~23) | |
分钟 | MI | 分钟(00~59) |
秒 | SS | 秒(00~59) |
FF | 微秒(000000~999999) | |
FF1 | 微秒(0~9) | |
FF2 | 微秒(00~99) | |
FF3 | 微秒(000~999) | |
FF4 | 微秒(0000~9999) | |
FF5 | 微秒(00000~99999) | |
FF6 | 微秒(000000~999999) | |
SSSSS | 午夜后的秒(0~86399) | |
上、下午 | AM或A.M. | 上午标识 |
PM或P.M. | 下午标识 | |
年 | Y,YYY | 带逗号的年(4和更多位) |
SYYYY | 公元前四位年 | |
YYYY | 年(4和更多位) | |
YYY | 年的后三位 | |
YY | 年的后两位 | |
Y | 年的最后一位 | |
IYYY | ISO年(4位或更多位) | |
IYY | ISO年的最后三位 | |
IY | ISO年的最后两位 | |
I | ISO年的最后一位 | |
RR | 年的后两位(可在21世纪存储20世纪的年份) | |
RRRR | 可接收4位年或两位年。若是两位,则和RR的返回值相同,若是四位,则和YYYY相同。 | |
| 纪元标识。BC(公元前),AD(公元后)。 | |
月 | MONTH | 全长大写月份名(空白填充为9字符) |
MON | 大写缩写月份名(3字符) | |
MM | 月份数(01~12) | |
RM | 罗马数字的月份(I-XII ;I=JAN)(大写) | |
天 | DAY | 全长大写日期名(空白填充为9字符) |
DY | 缩写大写日期名(3字符) | |
DDD | 一年里的日(001~366) | |
DD | 一个月里的日(01~31) | |
D | 一周里的日(1~7 ;周日是 1) | |
周 | W | 一个月里的周数(1~5)(第一周从该月第一天开始) |
WW | 一年里的周数(1~53)(第一周从该年的第一天开始) | |
IW | ISO一年里的周数(第一个星期四在第一周里) | |
世纪 | CC | 世纪(2位)(21 世纪从 2001-01-01 开始) |
儒略日 | J | 儒略日(自公元前 4712 年 1 月 1 日来的天数) |
季度 | Q | 季度 |
类别 | 模式 | 描述 |
|---|---|---|
世纪 | SCC | 世纪标识,公元前会显示- |
年 | SYYYY | 返回数字型年,公元前会显示- |
RR | 返回日期的2位年份 | |
RRRR | 返回日期的4位年份 | |
YEAR | 返回字符型年 | |
SYEAR | 返回字符型年,公元前会显示- | |
日期格式 | DL | 返回指定长日期形式 |
DS | 返回指定短日期 | |
TS | 返回指定时间格式 | |
秒 | FF7 | 微秒(0000000~9999990) |
FF8 | 微秒(00000000~99999900) | |
FF9 | 微秒(000000000~999999000) |

- 此函数在ORA兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s1的情况下:
- to_date, to_timestamp函数支持FX模式(输入和模式严格对应),支持X模式(小数点)。
- 输入模式不能出现超过一次,表示相同信息的模式不能同时出现。如SYYYY和BC不能同时出现。
- 模式大小写不敏感。
- 建议输入和模式之间使用分隔符,否则不保证行为与O完全一致。
- 上表中RR计算年的规则如下:

