FirstProject

FirstProject Code here, 😜

View project on GitHub

字符串常用函数

0. 略

func desc
lower(string) 转小写
upper(string) 转大写
replace(string,string,string) 将第一个字符串中的第二个字符串替换成第三个字符串
md5(string) 计算string的md5散列值,并以十六进制返回
repeat(string text, number int) 将string重复number次
to_hex(number int or bigint) 将数值转换成十六进制
reverse(str) 字符串逆序输出

1. split_part(src, DELIMITER, index)

  • 作用: 字符串分割
  • 参数:
    • src: 源字符串
    • DELIMITER: 分隔符
    • index: 索引, 从1开始
  • 示例
select split_part('ABC-DEF', '-', 2);
/*
 split_part
------------
 DEF
(1 row)
*/

2. string_to_array(src, DELIMITER)

  • 作用: 将string类型的字符串分割成数组
  • 参数:
    • src: 源字符串
    • DELIMITER: 分隔符
  • 示例
select string_to_array('i|love|you','|') ;
/*
 string_to_array
-----------------
 {i,love,you}
(1 row)
*/

3. unnest(array[‘i’,’love’,’you’])

  • 作用: 将数组转换成行
  • 参数:
    • src: 源字符串
    • DELIMITER: 分隔符
  • 示例
select unnest(array['i','love','you']);
/*
 unnest
--------
 i
 love
 you
(3 rows)
*/

4. length(src); char_length(src);

  • 作用: 将数组转换成行
  • 参数:
    • src: 源字符串
  • 示例
select length('123123123');
select char_length('123123123');
/*
 char_length
-------------
           9
(1 row)
*/

5. substring(src from int [for int])

  • 作用: 截取字符串,从from位置截取长度for,如果for省略,则是从from至结尾
  • 参数:
    • src: 源字符串
    • from: 开始位置
    • for: 长度,如省略则至结尾
  • 示例
select substring('hello world' from 2 for 3);
select substring('hello world', 2, 3);
/*
 substring
-----------
 ell
(1 row)
*/

select substring('hello world' from 2);
select substring('hello world', 2);

/*
 substring
------------
 ello world
(1 row)
*/

6. concat(str “any” [, str “any” [, …] ]);

  • 作用: 连接所有参数,个数不限,类型不限
  • 示例
select concat('x','man',3);

/*
concat
--------
 xman3
(1 row)
*/

7. concat_ws(str “any” [, str “any” [, …] ]);

  • 作用: 连接所有参数,个数不限,类型不限, 功能同上,只是第一个参数是连接分隔符
  • 示例
select concat_ws(',','x','man',3);

/*
concat_ws
-----------
 x,man,3
(1 row)
*/