字符串函数和操作符

HGDB 提供以下字符串函数和操作符:

函数 返回类型 描述 例子 结果
string || string text 串接 ‘High’ || ‘Go’ HighGo
string || non string or non string || string text 使用一个非字符串输入的串接 ‘Value:’||42 Value:42
bit_length(string) int 串中的位数 bit_length(‘jose’) 32
char_length(string) or character_length(string) int 串中的位数 char_length(‘jose’) 4
lower(string) text 将字符串转换为小写形式 lower(‘TOM’) tom
octet_length(string) int 串中的字节数 octet_length(‘jose’) 4
overlay(string placing string from int [for int]) text 替换子串 overlay(‘Txxxxas’ placing ‘hom’ from 2 for 4) Thomas
position(substring in string) int 定位指定子串 position(‘om’ in ‘Thomas’) 3
substring( string [ from int ] [ for int ] ) text 提取子串 substring(‘Thomas’ from 2 for 3) hom
substring(string from pattern) text 提取匹配 POSIX 正则表达式的子串 substring(‘Thomas’ from ‘…$’) mas
substring(string from pattern for escape) text 提取匹配 SQL 正则表达式的子串 substring(‘Thomas’ from ‘%#”o_a#”_’ for ‘#’) oma
trim( [ leading|trailing|both ] [ characters ] from string) text 从 string 的开头、结尾或者两端(both是默认值)移除只包含 characters(默认是一个空格)中字符的最长字符串 trim(both ‘xyz’ from ‘yxTomxx’) Tom
trim( [ leading | trailing | both ] [ from ] string [ , characters ] ) text trim() 的非标准版本 trim(both from ‘xTomxx’,’x’) Tom
upper(string) text 将字符串转换成大写形式 upper(‘tom’) TOM