绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
函数和操作符-二进制字符串函数和操作符
2020-01-15 14:43:38

字符串操作符

SQL定义了一些字符串函数,在这些函数里使用关键字而不是逗号来分隔参数。

  • octet_length(string)

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

    返回值类型:int

    示例:

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

    描述:替换子串。

    返回值类型:bytea

    示例:

    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)

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

    返回值类型:int

    示例:

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

    描述:截取子串。

    返回值类型:bytea

    示例:

    SELECT substring(E'Th\\000omas'::bytea from 2 for 3) AS RESULT; 
    result
    ----------
    \x68006f
    (1 row)
  • trim([both] bytes from string)

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

    返回值类型:bytea

    示例:

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

二进制字符串函数

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

  • btrim(string bytea,bytes bytea)

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

    返回值类型:bytea

    示例:

    SELECT btrim(E'\\000trim\\000'::bytea, E'\\000'::bytea) AS RESULT;
    result
    ------------
    \x7472696d
    (1 row)
  • get_bit(string, offset)

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

    返回值类型:int

    示例:

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

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

    返回值类型:int

    示例:

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

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

    返回值类型:bytea

    示例:

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

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

    返回值类型:bytea

    示例:

    SELECT set_byte(E'Th\\000omas'::bytea, 4, 64) AS RESULT; 
    result
    ------------------
    \x5468006f406173
    (1 row)


分享好友

分享这个小栈给你的朋友们,一起进步吧。

GaussDB_数据库
创建时间:2020-01-06 16:21:44
华为GaussDB数据库小栈
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • GaussDB_数据库
    专家
戳我,来吐槽~