云数据库 GAUSSDB-范围类型:构造范围
构造范围
每一种范围类型都有一个与其同名的构造器函数。使用构造器函数通常比写一个范围文字常数更方便,因为它避免了对界限值的额外引用。构造器函数接受两个或三个参数。两个参数的形式以标准的形式构造一个范围(下界是包含的,上界是排除的),而三个参数的形式按照第三个参数指定的界限形式构造一个范围。第三个参数必须是下列字符串之一: “()”、 “(]”、 “[)”或者 “[]”。 例如:
-- 完整形式是:下界、上界以及指示界限包含性/排除性的文本参数。 gaussdb=# SELECT numrange(1.0, 14.0, '(]'); numrange ------------ (1.0,14.0] (1 row) -- 如果第三个参数被忽略,则假定为 '[)'。 gaussdb=# SELECT numrange(1.0, 14.0); numrange ------------ [1.0,14.0) (1 row) -- 尽管这里指定了 '(]',显示时该值将被转换成标准形式,因为int8range是一种离散范围类型(见下文)。 gaussdb=# SELECT int8range(1, 14, '(]'); int8range ----------- [2,15) (1 row) -- 为一个界限使用NULL导致范围在那一边是无界的。 gaussdb=# SELECT numrange(NULL, 2.2); numrange ---------- (,2.2) (1 row)