字符串连接

SELECT 'A'||'B';  字符串连接,适用于字符串与数字连接

SELECT CONCAT(10,'a','hello',20.0);  连接所有参数,个数不限,类型不限

 

字母转换

SELECT LOWER('ABCD');  将字符转换成小写

SELECT UPPER('ABCD');  将字符转换成大写

SELECT INITCAP('abcd');  将字符串中每个单词的首字母大写

 

字符串替换

SELECT REPLACE('aaaxxx','a','_');  替换字符串:SELECT REPLACE('aaaxxx','a','_');

SELECT TRIM('  asd ');  删除头尾部空格 → TRIM(BOTH '   asd  ')

SELECT TRIM(LEADING '  asd '),LENGTH(TRIM(LEADING '  asd ')); 删除头部空格

SELECT TRIM(TRAILING '  asd '),LENGTH(TRIM(TRAILING '  asd ')); 删除尾部空格

SELECT TRIM('aaahelloworldaaa','a');  可以指定删除字符,默认删除空格

 

字符串查找与截取

SELECT POSITION('lo' in 'hello');  给定子字符串在字符串的位置,查询不到时返回0。

SELECT SUBSTRING('hello world' FROM 3 FOR 10);  截取字符串,从from位置截取长度for

SELECT LENGTH('ABCD');  字符串中字符的个数

SELECT LEFT('HELLO',2);  返回字符串前n个字符,n为负数时返回除最后|n|个字符以外的所有字符

SELECT RIGHT('HELLO',2);  返回字符串后n个字符,n为负数时返回除最前|n|个字符意外的所有字符

strpos(string, substring);例如:strpos('high','ig'),返回2

字符串类型转换

SELECT CAST(10.0 AS text); 

SELECT CAST(salary AS int) FROM company3;  类型转换

 

字符串判断null

COALESCE(b.price, 其它值)

字符串前缀填充

select lpad(‘256’, 6, ‘0’) //256不满6位数时,在左边补0,最终达到6位长度

字符串后缀填充

select rpad(‘256’, 6, ‘0’) //256不满6位数时,在右边补0,最终达到6位长度