二进制字符串函数和操作符

    • octet_length(string)

      描述:二进制字符串中的字节数。

      返回值类型:int

      示例:

    • overlay(string placing string from int [for int])

      描述:替换子串。

      返回值类型:bytea

      示例:

      1. result
      2. ----------------
      3. \x5402036d6173
      4. (1 row)
    • position(substring in string)

      描述:特定子字符串的位置。

      返回值类型:int

      示例:

      1. openGauss=# SELECT position(E'\\000om'::bytea in E'Th\\000omas'::bytea) AS RESULT;
      2. result
      3. --------
      4. 3
      5. (1 row)
    • substring(string [from int] [for int])

      描述:截取子串。

      返回值类型:bytea

      示例:

    • substr(string, from int [, for int])

      描述:截取子串。

      返回值类型:bytea

      示例:

      1. openGauss=# select substr(E'Th\\000omas'::bytea,2, 3) as result;
      2. \x68006f
      3. (1 row)
    • trim([both] bytes from string)

      描述:从string的开头和结尾删除只包含bytes中字节的最长字符串。

      返回值类型:bytea

      示例:

      1. openGauss=# SELECT trim(E'\\000'::bytea from E'\\000Tom\\000'::bytea) AS RESULT;
      2. result
      3. ----------
      4. \x546f6d
      5. (1 row)

    二进制字符串函数

    openGauss也提供了函数调用所使用的常用语法。

    • btrim(string bytea,bytes bytea)

      描述:从string的开头和结尾删除只包含bytes中字节的最长的字符串。

      返回值类型:bytea

      示例:

    • get_bit(string, offset)

      描述:从字符串中抽取位。

      示例:

      1. openGauss=# SELECT get_bit(E'Th\\000omas'::bytea, 45) AS RESULT;
      2. result
      3. 1
      4. (1 row)
    • get_byte(string, offset)

      描述:从字符串中抽取字节。

      返回值类型:int

      示例:

      1. openGauss=# SELECT get_byte(E'Th\\000omas'::bytea, 4) AS RESULT;
      2. result
      3. --------
      4. (1 row)
    • rawcmp

      描述:raw数据类型比较函数。

      参数:raw, raw

      返回值类型:integer

    • raweq

      描述:raw数据类型比较函数。

      参数:raw, raw

      返回值类型:boolean

    • rawge

      描述:raw数据类型比较函数。

      参数:raw, raw

      返回值类型:boolean

    • rawgt

      描述:raw数据类型比较函数。

      参数:raw, raw

      返回值类型:boolean

    • rawin

      描述:raw数据类型解析函数。

      参数:cstring

      返回值类型:bytea

    • rawle

      描述:raw数据类型解析函数。

      参数:raw, raw

      返回值类型:boolean

    • rawlike

      描述:raw数据类型解析函数。

      返回值类型:boolean

    • rawlt

      描述:raw数据类型解析函数。

      参数:raw, raw

      返回值类型:boolean

    • rawne

      描述:比较raw类型是否一样。

      参数:raw, raw

      返回值类型:boolean

    • rawnlike

      描述:比较raw类型与模式是否不匹配。

      参数:raw, raw

      返回值类型:boolean

    • rawout

      描述:RAW类型的输出接口。

      参数:bytea

      返回值类型:cstring

    • rawsend

      描述:转换bytea为二进制类型。

      参数:raw

      返回值类型:bytea

    • rawtohex

      描述:raw格式转换为十六进制。

      参数:text

      返回值类型:text

    • set_bit(string,offset, newvalue)

      描述:设置字符串中的位。

      返回值类型:bytea

      示例:

    • set_byte(string,offset, newvalue)

      描述:设置字符串中的字节。

      示例:

      1. openGauss=# SELECT set_byte(E'Th\\000omas'::bytea, 4, 64) AS RESULT;
      2. result
      3. ------------------
      4. (1 row)