云数据库 GAUSSDB-范围函数和操作符:范围函数

时间:2024-11-13 14:46:19

范围函数

如果范围是空或者需要的界限是无穷的,lower和upper函数将返回null。lower_inc、upper_inc、lower_inf和upper_inf函数均对空范围返回false。

  • numrange(numeric, numeric, [text])

    描述:表示一个范围。

    返回类型:范围元素类型

    示例:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    gaussdb=# SELECT numrange(1.1,2.2) AS RESULT;
     result 
    --------
    [1.1,2.2)
    (1 row)
    gaussdb=# SELECT numrange(1.1,2.2, '()') AS RESULT;
     result 
    --------
    (1.1,2.2)
    (1 row)
    
  • lower(anyrange)

    描述:范围的下界。

    返回类型:范围元素类型

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT lower(numrange(1.1,2.2)) AS RESULT;
     result 
    --------
        1.1
    (1 row)
    
  • upper(anyrange)

    描述:范围的上界

    返回类型:范围元素类型

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT upper(numrange(1.1,2.2)) AS RESULT;
     result 
    --------
        2.2
    (1 row)
    
  • isempty(anyrange)

    描述:范围是否为空

    返回类型:Boolean

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT isempty(numrange(1.1,2.2)) AS RESULT;
     result 
    --------
     f
    (1 row)
    
  • lower_inc(anyrange)

    描述:是否包含下界

    返回类型:Boolean

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT lower_inc(numrange(1.1,2.2)) AS RESULT;
     result 
    --------
     t
    (1 row)
    
  • upper_inc(anyrange)

    描述:是否包含上界

    返回类型:Boolean

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT upper_inc(numrange(1.1,2.2)) AS RESULT;
     result 
    --------
     f
    (1 row)
    
  • lower_inf(anyrange)

    描述:下界是否为无穷

    返回类型:Boolean

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT lower_inf('(,)'::daterange) AS RESULT;
     result 
    --------
     t
    (1 row)
    
  • upper_inf(anyrange)

    描述:上界是否为无穷

    返回类型:Boolean

    示例:

    1
    2
    3
    4
    5
    gaussdb=# SELECT upper_inf('(,)'::daterange) AS RESULT;
     result 
    --------
     t
    (1 row)
    
support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0372.html