GBase 8c
其他
文章

GBase 8c 数据类型——data_part

发表于2023-12-07 10:32:2020次浏览0个评论

date_part函数基于传统Ingres函数,等效于SQL标准函数extract。
 

 

l date_part('field', source)

这里的field参数必须是一个字符串,而不是一个名称。有效的field与extract一样,详细信息请参见EXTRACT。

示例:

gbase=# SELECT date_part('day', TIMESTAMP '2001-02-16 20:38:40');

date_part

-----------

16

(1 row)

gbase=# SELECT date_part('hour', INTERVAL '4 hours 3 minutes');

date_part

-----------

4

(1 row)

表5-7显示了日期和时间值的规范格式。

表 5-7 日期/时间规范格式

类别

模式

描述

小时

HH

一天的小时数,取值范围为01-12

HH12

一天的小时数,取值范围为01-12

HH24

一天的小时数,取值范围为00-23

分钟

MI

分钟,取值范围为00-59

SS

秒,取值范围为00-59

FF

微秒,取值范围为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

可接收2位或4位。若是两位,则和RR的返回值相同,若是四位,则和YYYY相同。

BC或B.C.

AD或A.D.

纪元标识。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

季度

上表中RR计算年的规则如下:

l 输入的两位年份在00~49之间:

当前年份的后两位在00~49之间,返回值年份的前两位和当前年份的前两位相同; 当前年份的后两位在50~99之间,返回值年份的前两位是当前年份的前两位加1。

l 输入的两位年份在50~99之间:

当前年份的后两位在00~49之间,返回值年份的前两位是当前年份的前两位减1; 当前年份的后两位在50~99之间,返回值年份的前两位和当前年份的前两位相同。

评论

登录后才可以发表评论