MySQL字符串函数

本文主要记录字符串单行函数,列出了所有常用的字符串函数。

ASCII(S) 

返回字符串S中的第一个字符的ASCII码值

SELECT ASCII('a');

结果:

 

SELECT ASCII('abc');

结果:

 

CHAR_LENGTH(s) 

返回字符串s的字符数。作用与CHARACTER_LENGTH(s)相同

SELECT CHAR_LENGTH('abcdefg');

结果:

 LENGTH(s)

返回字符串s的字节数,和字符集有关

SELECT LENGTH('abcdefg');

结果:

 

CONCAT(s1,s2,......,sn)

连接s1,s2,......,sn为一个字符串

SELECT CONCAT('n','b','cls');

结果:

 CONCAT_WS(x, s1,s2,......,sn)

同CONCAT(s1,s2,...)函数,但是每个字符串之间要加上x

SELECT CONCAT_WS('x','n','b','cls');

结果:

 INSERT(str, idx, len, replacestr)

将字符串str从第idx位置开始,len个字符长的子串替换为字符串replacestr

SELECT INSERT('jams-ads',6,3,'nes');

结果:

REPLACE(str, a, b)

用字符串b替换字符串str中所有出现的字符串a

SELECT REPLACE('wwe','w','c');

结果:

UPPER(s) 或 UCASE(s)

将字符串s的所有字母转成大写字母

SELECT UPPER('posdun');
SELECT UCASE('posdun');

结果:

LOWER(s) 或LCASE(s)

将字符串s的所有字母转成小写字母

SELECT LOWER('POsDUN');
SELECT LCASE('POsDUN');

结果:

 LEFT(str,n) 

 返回字符串str最左边的n个字符

SELECT LEFT('jams',2);

结果:

 RIGHT(str,n)

返回字符串str最右边的n个字符

SELECT RIGHT('jordan',3);

结果:

 

LPAD(str, len, pad)

用字符串pad对str最左边进行填充,直到str的长度为len个字符

SELECT LPAD('ipad',6,'os');

结果:

RPAD(str ,len, pad)

用字符串pad对str最右边进行填充,直到str的长度为len个字符

SELECT RPAD('ios',6,'kuke');

结果:

LTRIM(s)

去掉字符串s左侧的空格

SELECT LTRIM('  h de  ');

 结果:

RTRIM(s)

去掉字符串s右侧的空格

SELECT RTRIM('  h de  ');

结果:

TRIM(s)

去掉字符串s开始与结尾的空格

SELECT TRIM('  h de  ');

结果:

TRIM(s1 FROM s)

去掉字符串s开始与结尾的s1

SELECT TRIM('de' FROM 'h de');

结果:

TRIM(LEADING s1 FROM s) 

去掉字符串s开始处的s1

SELECT TRIM(LEADING 'd' FROM 'doggd');

结果:

TRIM(TRAILING s1 FROM s)

去掉字符串s结尾处的s1

SELECT TRIM(TRAILING 'd' FROM 'doggd');

结果:

REPEAT(str, n)

返回str重复n次的结果

SELECT REPEAT('line',2);

结果:

SPACE(n)

返回n个空格

SELECT SPACE(5);
SELECT CONCAT('a',SPACE(5),'c');

结果:

STRCMP(s1,s2)

比较字符串s1,s2的ASCII码值的大小 s1>s2 结果为1 s1=s2结果为0 s1<s2 结果为-1

SELECT STRCMP('ac','acd');

结果:

SUBSTR(s,index,len)

返回从字符串s的index位置其len个字符,作用与SUBSTRING(s,n,len)、 MID(s,n,len)相同

SELECT SUBSTR('news',2,2);

结果:

LOCATE(substr,str)

返回字符串substr在字符串str中首次出现的位置,作用于POSITION(substr IN str)、INSTR(str,substr)相同。未找到,返回0

SELECT LOCATE('on','information');

结果:

ELT(m,s1,s2,…,sn)

返回指定位置的字符串,如果m=1,则返回s1,如果m=2,则返回s2,如果m=n,则返回sn

SELECT ELT(2,'s1','s2','s3');

结果:

FIELD(s,s1,s2,…,sn)

返回字符串s在字符串列表中第一次出现的位置 

SELECT FIELD('msm','hello','msm','amma');

结果:

FIND_IN_SET(s1,s2)

返回字符串s1在字符串s2中出现的位置。其中,字符串s2是一个以逗号分隔的字符串

SELECT FIND_IN_SET('mm','hello,mm,amma');

结果:

REVERSE(s)

返回s反转后的字符串

SELECT REVERSE('abc');

结果:

NULLIF(value1,value2)

比较两个字符串,如果value1与value2相等,则返回NULL,否则返回value1

SELECT NULLIF('abs','abc');
SELECT NULLIF('abs','abs');

结果:

 到此所有字符串函数已经列出了,觉得有用的朋友来个赞吧。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值