Cloudflare Pipelines 标量函数实现基于 Apache DataFusion ↗(通过 Arroyo ↗),本文档源自 DataFusion 函数参考。
返回字符串中第一个字符的 ASCII 值。
ascii(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
相关函数: chr
返回字符串的位长度。
bit_length(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
相关函数: length, octet_length
从字符串的开头和结尾修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串开头和结尾的所有空白。
btrim(str[, trim_str])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- trim_str: 要从输入字符串开头和结尾修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。
别名
- trim
length 的别名。
length 的别名。
连接多个字符串。
concat(str[, ..., str_n])参数
- str: 要连接的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- str_n: 后续要连接的字符串列或字面量字符串。
相关函数: concat_ws
使用指定分隔符连接多个字符串。
concat(separator, str[, ..., str_n])参数
- separator: 插入到连接字符串之间的分隔符。
- str: 要连接的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- str_n: 后续要连接的字符串列或字面量字符串。
相关函数: concat
返回具有指定 ASCII 或 Unicode 码值的字符。
chr(expression)参数
- expression: 包含要操作的 ASCII 或 Unicode 码值的表达式。 可以是常量、列或函数,以及算术或字符串运算符的任何组合。
相关函数: ascii
测试字符串是否以子字符串结尾。
ends_with(str, substr)参数
- str: 要测试的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- substr: 要测试的子字符串。
将输入字符串中每个单词的首字母大写。 单词由非字母数字字符分隔。
initcap(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
strpos 的别名。
参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- substr: 要搜索的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
从字符串左侧返回指定数量的字符。
left(str, n)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- n: 要返回的字符数。
相关函数: right
返回字符串中的字符数。
length(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
别名
- char_length
- character_length
相关函数: bit_length, octet_length
将字符串转换为小写。
lower(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
用另一个字符串填充字符串左侧以达到指定长度。
lpad(str, n[, padding_str])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- n: 要填充到的字符串长度。
- padding_str: 用于填充的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。 默认为空格。
相关函数: rpad
从字符串开头修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串开头的所有空白。
ltrim(str[, trim_str])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- trim_str: 要从输入字符串开头修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。
返回字符串的字节长度。
octet_length(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
相关函数: bit_length, length
返回输入字符串重复指定次数的字符串。
repeat(str, n)参数
- str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- n: 重复输入字符串的次数。
将字符串中指定子字符串的所有出现替换为新子字符串。
replace(str, substr, replacement)参数
- str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- substr: 要在输入字符串中替换的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- replacement: 替换子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
反转字符串的字符顺序。
reverse(str)参数
- str: 要重复的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
从字符串右侧返回指定数量的字符。
right(str, n)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- n: 要返回的字符数。
相关函数: left
用另一个字符串填充字符串右侧以达到指定长度。
rpad(str, n[, padding_str])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- n: 要填充到的字符串长度。
- padding_str: 用于填充的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。 默认为空格。
相关函数: lpad
从字符串末尾修剪指定的修剪字符串。 如果未提供修剪字符串,则移除输入字符串末尾的所有空白。
rtrim(str[, trim_str])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- trim_str: 要从输入字符串末尾修剪的字符串表达式。 可以是常量、列或函数,以及算术运算符的任何组合。 默认为空白字符。
根据指定分隔符拆分字符串,并返回指定位置的子字符串。
split_part(str, delimiter, pos)参数
- str: 要拆分的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- delimiter: 用于拆分的字符串或字符。
- pos: 要返回部分的位置。
测试字符串是否以子字符串开头。
starts_with(str, substr)参数
- str: 要测试的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- substr: 要测试的子字符串。
返回指定子字符串在字符串中的起始位置。 位置从 1 开始。 如果子字符串不存在于字符串中,函数返回 0。
strpos(str, substr)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- substr: 要搜索的子字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
别名
- instr
从字符串中的特定起始位置提取指定数量的字符子字符串。
substr(str, start_pos[, length])参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- start_pos: 子字符串的起始字符位置。 字符串中第一个字符的位置为 1。
- length: 要提取的字符数。 如果未指定,则返回起始位置之后的字符串其余部分。
将字符串中的字符转换为指定的翻译字符。
translate(str, chars, translation)- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
- chars: 要转换的字符。
- translation: 翻译字符。翻译字符仅替换 chars 字符串中相同位置的字符。
将整数转换为十六进制字符串。
to_hex(int)参数
- int: 要转换的整数表达式。 可以是常量、列或函数,以及算术运算符的任何组合。
btrim 的别名。
将字符串转换为大写。
upper(str)参数
- str: 要操作的字符串表达式。 可以是常量、列或函数,以及字符串运算符的任何组合。
返回每行唯一的 UUID v4 字符串值。
uuid()返回从指定位置和指定长度被另一个字符串替换后的字符串。
例如,overlay('Txxxxas' placing 'hom' from 2 for 4) → Thomas
overlay(str PLACING substr FROM pos [FOR count])参数
- str: 要操作的字符串表达式。
- substr: 用于替换 str 部分的字符串。
- pos: str 中要替换的起始位置。
- count: 从 str 起始位置要替换的字符数。如果未指定,将使用 substr 长度。
返回两个给定字符串之间的 Levenshtein 距离。
例如,levenshtein('kitten', 'sitting') = 3
levenshtein(str1, str2)参数
- str1: 用于与 str2 计算 Levenshtein 距离的字符串表达式。
- str2: 用于与 str1 计算 Levenshtein 距离的字符串表达式。
返回 str 中分隔符 delim 出现 count 次之前的子字符串。
如果 count 为正数,则返回最后一个分隔符左侧的所有内容(从左计数)。
如果 count 为负数,则返回最后一个分隔符右侧的所有内容(从右计数)。
例如,substr_index('www.apache.org', '.', 1) = www,substr_index('www.apache.org', '.', -1) = org
substr_index(str, delim, count)参数
- str: 要操作的字符串表达式。
- delim: 在 str 中查找以拆分 str 的字符串。
- count: 搜索分隔符的次数。可以是正数或负数。
如果字符串 str 在由 N 个子字符串组成的字符串列表 strlist 中,则返回 1 到 N 范围内的值。
例如,find_in_set('b', 'a,b,c,d') = 2
find_in_set(str, strlist)参数
- str: 要在 strlist 中查找的字符串表达式。
- strlist: 字符串列表是由 , 字符分隔的子字符串组成的字符串。