大数据分析——Apache Doris(五十六)

177 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第10天,点击查看活动详情

 ltrim(VARCHAR str)

将参数 str 中从开始部分连续出现的空格去掉

SELECT ltrim ( '   ab d' );****
 money_format(Number)

将数字按照货币格式输出,整数部分每隔3位用逗号分隔,小数部分保留2位

select money_format ( 17014116 );****
select money_format ( 1123.456 );****
select money_format ( 1123.4 );****
 NULL_OR_EMPTY (VARCHAR str)

如果字符串为空字符串或者NULL,返回true。否则,返回false

select null_or_empty ( null );****
select null_or_empty ( "" );
select null_or_empty ( "a" );
 regexp_extract(VARCHAR str, VARCHAR pattern, int pos)

对字符串 str 进行正则匹配,抽取符合 pattern 的第 pos 个匹配部分。需要 pattern 完全匹配 str 中的某部分,这样才能返回 pattern 部分中需匹配部分。如果没有匹配,返回空字符串。

SELECT regexp_extract ( 'AbCdE' ,  '([[:lower:]]+)C([[:lower:]]+)' ,  1 );****
SELECT regexp_extract ( 'AbCdE' ,  '([[:lower:]]+)C([[:lower:]]+)' ,  2 );
 regexp_replace(VARCHAR str, VARCHAR pattern, VARCHAR repl)

对字符串 str 进行正则匹配, 将命中 pattern 的部分使用 repl 来进行替换

SELECT regexp_replace ( 'a b c' ,  " " ,  "-" );****
SELECT regexp_replace ( 'a b c' , '(b)' , '<\1>' );
 repeat(VARCHAR str, INT count)

将字符串 str 重复 count 次输出,count 小于1时返回空串,str,count 任一为NULL时,返回 NULL

SELECT repeat ( "a" ,  3 );****
SELECT repeat ( "a" ,  -1 );
 reverse(VARCHAR str)

将字符串反转,返回的字符串的顺序和源字符串的顺序相反。

SELECT REVERSE ( 'hello' );****
SELECT REVERSE ( '你好' );
 right(VARCHAR str)

它返回具有指定长度的字符串的右边部分, 长度的单位为utf8字符

SELECT right ( 'Hello doris' , 5 );****
 rpad(VARCHAR str, INT len, VARCHAR pad)

返回 str 中长度为 len(从首字母开始算起)的字符串。如果 len 大于 str 的长度,则在 str 的后面不断补充 pad 字符,直到该字符串的长度达到 len 为止。如果 len 小于 str 的长度,该函数相当于截断 str 字符串,只返回长度为 len 的字符串。len 指的是字符长度而不是字节长度。

SELECT rpad ( "hi" ,  5 ,  "xy" );****
SELECT rpad ( "hi" ,  1 ,  "xy" );
 split_part(VARCHAR content, VARCHAR delimiter, INT field)

根据分割符拆分字符串, 返回指定的分割部分(从一开始计数)。

select split_part ( "hello world" ,  " " ,  1 );****
select split_part ( "hello world" ,  " " ,  2 );
select split_part ( "2019年7月8号" ,  "月" ,  1 );
select split_part ( "abca" ,  "a" ,  1 );
 STARTS_WITH (VARCHAR str, VARCHAR prefix)

如果字符串以指定前缀开头,返回true。否则,返回false。任意参数为NULL,返回NULL。

select starts_with ( "hello world" , "hello" );****
select starts_with ( "hello world" , "world" );