更新时间:2025-05-29 GMT+08:00
字符串操作符
SQL定义了一些字符串函数,在这些函数里使用关键字而不是逗号来分隔参数。
octet_length(string)
描述:二进制字符串中的字节数。
返回值类型:int
示例:
1 2 3 4 5 |
gaussdb=# SELECT octet_length(E'jo\\000se'::bytea) AS RESULT; result -------- 5 (1 row) |
overlay(string placing string from int [for int])
描述:替换子串。
返回值类型:bytea
示例:
1 2 3 4 5 |
gaussdb=# 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
示例:
1 2 3 4 5 |
gaussdb=# SELECT position(E'\\000om'::bytea in E'Th\\000omas'::bytea) AS RESULT; result -------- 3 (1 row) |
substring(string [from int] [for int])
描述:截取子串。
返回值类型:bytea
示例:
1 2 3 4 5 |
gaussdb=# SELECT substring(E'Th\\000omas'::bytea from 2 for 3) AS RESULT; result ---------- \x68006f (1 row) |
substr(bytea [from int] [for int])
描述:截取子串。
返回值类型:bytea
示例:
1 2 3 4 5 |
gaussdb=# SELECT substr(E'Th\\000omas'::bytea,2, 3) as result; result ---------- \x68006f (1 row) |
trim([both] bytes from string)
描述:从string的开头和结尾删除只包含bytes中字节的最长字符串。
返回值类型:bytea
示例:
1 2 3 4 5 |
gaussdb=# SELECT trim(E'\\000'::bytea from E'\\000Tom\\000'::bytea) AS RESULT; result ---------- \x546f6d (1 row) |
父主题: 二进制字符串函数和操作符