MySql基础函数,常用的字符串函数
1、1.字符串长度函数CHAR_LENGTH(str):计算字符串所含字符个数的函数,注意这里说的是个数;LENGTH(str):计算字符串长度函数,注意这里说的是长度;示例SELECT CHAR_LENGTH('abc'),CHAR_LENGTH('张三'),LENGTH('abc'),LENGTH('张三');
2、2.字腿发滏呸符串拼接函数CONCAT(str1,str2,...):字符串拼接函数,拼接str1,str2,...,如果任一字符串为NULL,则返回NULL;CONCAT_WS(x荑樊综鲶,str1,str2,...),带分隔符的字符串拼接函数,x为分隔符,如果任一字符串为NULL,则忽略该字符串;示例SELECT CONCAT('abc','defg','h'),CONCAT('aaa',NULL,'bbb'),CONCAT_WS('*','abc','def'),CONCAT_WS('*','abc',NULL,'def');
3、3.字符串替换函数INSERT(str1,x,len,str2):字符串替换函数,把字符串str,从第x位(从0开始计算)到len长度,替换成str2;示例SELECT INSERT('HELLO',1,2,'bb'),INSERT('HELLO',-1,4,'bb'),INSERT('HELLO',3,100,'bb');
4、4.字母大小写转换函数LOWER(str)或LCASE(str):把英文字符串str转为小写;UPPER(str)或UCASE(str):把英文字符串str转为大写;示例SELECT LOWER('Hello World'),LCASE('Hello World'),UPPER('Hello World'),UCASE('Hello World');
5、5.获取指定字符串长度函数LEFT(str,x):从左侧开始获取x位长度的字符串RIGHT(str,x):从右侧开始获取x位长度字符串示例SELECT LEFT('Hello World',7),RIGHT('Hello World',7);
6、6.填充字符串脑栲葱蛸函数LPAD(str1,x,str2):左侧填充字符串长度,在字符串str1左侧,填充字符串str2到指定长度旌忭檀挢x;RPAD(str1,x,str2):从右侧开始获取x位长度字符串示例SELECT LPAD('Hello',10,'World'),LPAD('Hello',8,'World'),RPAD('Hello',20,'World'),RPAD('Hello',8,'World');
7、7.删除字符串函墙绅褡孛数LTRIM(str):删除字符串左侧空格RTRIM(str):删除字符串右侧空格皈其拄攥TRIM(str):删除自字符串两侧函数TRIM(str1 FROM str2):删除str两端指定的字符串示例SELECT LTRIM(' Hello World '),RTRIM(' Hello World '),TRIM(' Hello World '),TRIM('o' FROM 'oppo');
8、8.重复生成字符串函数REPEAT(str,n):重复生成字符串str,生成n次,示例SELECT REPEAT('Hello',3);
9、9.空格函数SPACE(n):生成指定长度的空格示例SELECT CONCAT('abc',SPACE(10),'def');
10、10.字符串替换函数REPLACE(str,str1,str2);用字符串str2带替字符串str中的str1示例SELECT REPLACE('hello world','l','a');
11、11.比较字符串大小函数STRCMP(str1,str2),字符串str1=str2(不分大小写),返回0,str1<str2,返回-1,str1>str2,返回1。示例SELE潮贾篡绐CT STRCMP('hello world','HELLO WORLD'),STRCMP('hello world','hello world'),STRCMP('hello world1','hello world2'),STRCMP('hello world2','hello world1');
12、12.字符串截取函数SUBSTRING(str,n,[len]),MID(str,n,[len]),从字符串str的第n位起截取len长度的字符串,n为正数时,从左往右数,当n为负数时,从右藻焐瞬赧往左数。示例SELECT SUBSTRING('hello world',4),SUBSTRING('hello world',2,7),SUBSTRING('hello world',-5,3),MID('hello world',-5,3);
13、13.字符串开始位置匹配函数LOCATE(str1,str),POSITION(str1 IN str),INSTR(str,str1):返回字符串str1在字符串str中的位置示例SELECT LOCATE('world','hello world'),POSITION('world' IN 'hello world'),INSTR('hello world','world');
14、14.字符串逆转函数REVERSE(str):把字符串str反转示例SELECT REVERSE('张三');
15、15.返回多个字符串中的制定位置的字符串ELT(n,str1,str2,str3...):返回几个字符串中的第n个字符串示例SELECT ELT(2,'张三','李四','王五');
16、16.获取指定字符串在多个字符串中的位置FIELD(str,str1,str2,str3...):返回字符串str,在多个字符串中的首次出现的位置示例SELECT FIELD('王五','张三','李四','王五','王五');