GBase 8c
其他
文章

GBase 8c 数据类型-范围类型 之 构造范围

发表于2023-12-06 15:52:5956次浏览2个评论

每一种范围类型都有一个与其同名的构造器函数。使用构造器函数常常比写一个范围文字常数更方便,因为它避免了对界限值的额外引用。构造器函数接受两个或三个参数。两个参数的形式以标准的形式构造一个范围(下界是包含的,上界是排除的), 而三个参数的形式按照第三个参数指定的界限形式构造一个范围。第三个参数必须是下列字符串之一: “()”、 “(]”、 “[)”或者 “[]”。 例如:
 

 

-- 完整形式是:下界、上界以及指示界限包含性/排除性的文本参数。

gbase=# SELECT numrange(1.0, 14.0, '(]');

(1.0,14.0]

-- 如果第三个参数被忽略,则假定为 '[)'。

gbase=# SELECT numrange(1.0, 14.0);

[1.0,14.0)

-- 尽管这里指定了 '(]',显示时该值将被转换成标准形式,因为 int8range 是一种离散范围类型(见下文)。

gbase=# SELECT int8range(1, 14, '(]');

[2,15)

-- 为一个界限使用 NULL 导致范围在那一边是无界的。

gbase=# SELECT numrange(NULL, 2.2);

(,2.2)

评论

登录后才可以发表评论
用户头像
levvel发表于 8个月前
少年易学老难成,一寸光阴不可轻
用户头像
levvel发表于 8个月前
给你点个赞