HomeMogDBMogDB StackUqbar
v3.0

Documentation:v3.0

Supported Versions:

Other Versions:

Binary String Functions and Operators

String Operators

SQL defines some string functions that use keywords, rather than commas, to separate arguments.

  • octet_length(string)

    Description: Specifies the number of bytes in a binary string.

    Return type: int

    Example:

    MogDB=# SELECT octet_length(E'jo\\000se'::bytea) AS RESULT;
     result
    --------
          5
    (1 row)
  • overlay(string placing string from int [for int])

    Description: Replaces substrings.

    Return type: bytea

    Example:

    MogDB=# SELECT overlay(E'Th\\000omas'::bytea placing E'\\002\\003'::bytea from 2 for 3) AS RESULT;
         result
    ----------------
     \x5402036d6173
    (1 row)
  • position(substring in string)

    Description: Specifies the location of a specified substring.

    Return type: int

    Example:

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

    Description: Truncates a substring.

    Return type: bytea

    Example:

    MogDB=# SELECT substring(E'Th\\000omas'::bytea from 2 for 3) AS RESULT;
      result
    ----------
     \x68006f
    (1 row)
  • substr(string, from int [, for int])

    Description: Truncates a substring.

    Return type: bytea

    Example:

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

    Description: Removes the longest string containing only bytes from bytes from the start and end of string.

    Return type: bytea

    Example:

    MogDB=# SELECT trim(E'\\000'::bytea from E'\\000Tom\\000'::bytea) AS RESULT;
      result
    ----------
     \x546f6d
    (1 row)

Other Binary String Functions

MogDB provides common syntax used for calling functions.

  • btrim(string bytea,bytes bytea)

    Description: Removes the longest string containing only bytes from bytes from the start and end of string.

    Return type: bytea

    Example:

    MogDB=# SELECT btrim(E'\\000trim\\000'::bytea, E'\\000'::bytea) AS RESULT;
       result
    ------------
     \x7472696d
    (1 row)
  • decode(string text, format text)

    Description: Decodes binary data from textual representation. Supported formats are: base64, hex, escape.

    Return type: bytea

    Example:

    MogDB=# SELECT decode('MTIzAAE=', 'base64');
        decode
    --------------
     \x3132330001
    (1 row)
  • encode(data bytea, format text)

    Description: Encodes binary data into a textual representation. Supported formats are: base64, hex, escape. escape converts zero bytes and high-bit-set bytes to octal sequences (\nnn) and doubles backslashes.

    Return type: text

    Example:

    MogDB=# SELECT encode(E'123\\000\\001', 'base64');
      encode
    ----------
     MTIzAAE=
    (1 row)
  • get_bit(string, offset)

    Description: Extracts bits from a string.

    Return type: int

    Example:

    MogDB=# SELECT get_bit(E'Th\\000omas'::bytea, 45) AS RESULT;
     result
    --------
          1
    (1 row)
  • get_byte(string, offset)

    Description: Extracts bytes from a string.

    Return type: int

    Example:

    MogDB=# SELECT get_byte(E'Th\\000omas'::bytea, 4) AS RESULT;
     result
    --------
        109
    (1 row)
  • set_bit(string,offset, newvalue)

    Description: Sets bits in a string.

    Return type: bytea

    Example:

    MogDB=# SELECT set_bit(E'Th\\000omas'::bytea, 45, 0) AS RESULT;
          result
    ------------------
     \x5468006f6d4173
    (1 row)
  • set_byte(string,offset, newvalue)

    Description: Sets bytes in a string.

    Return type: bytea

    Example:

    MogDB=# SELECT set_byte(E'Th\\000omas'::bytea, 4, 64) AS RESULT;
          result
    ------------------
     \x5468006f406173
    (1 row)
Copyright © 2011-2024 www.enmotech.com All rights reserved.