mysql函数(一.字符函数)
一.字符函数
1.LENGTH(str)字符长度函数:一个汉字为三个字符
(1)查看某字符串的长度(比如名字)
select LENGTH('sunchuangye'); 结果:11
(2)根据字符长度进行倒序(比如名字)
select id,userName FROM t_user ORDER BY LENGTH(userName) DESC;
2.CONCAT(str1,str2,...)拼接字符串
(1)拼接id和姓名,用~隔开
select CONCAT(id,'~',username) from t_user; 结果:1~孙创业
3.UPPER(str)将字母变大写
(1)将字母大写(比如名字)
select UPPER('sunchaungye'); 结果:SUNCHUANGYE
4.LOWER(str)将字母变小写
(1)将字母小写(比如名字)
select LOWER('sUNCHAUNGYE'); 结果:sunchuangye
(2)拼接字符要姓大写名小写(比如名字)
select CONCAT(UPPER('sun'),'~',LOWER('CHAUNGYE'));结果:SUN~chuangye
5.SUBSTRING();截取字符串,索引是从1开始的
SUBSTRING(str from pos for len);从pos开始要截取的长度len
SUBSTRING(str from pos); 从pos开始截取到最后一位
SUBSTRING(str,pos); 从pos开始截取到最后一位
SUBSTRING(str,pos,len) 从pos开始要截取的长度len
SUBSTRING_INDEX(str,delim,count); delim:分隔符 count:计数
(1)截取4之后包含4的后8位数
select SUBSTRING('sunchuangye' from 4 FOR 8); 结果:chuangye
(2)截取4之后包含4的所有数
select SUBSTRING('sunchuangye' FROM 4); 结果:chuangye
(3)截取4之后包含4的所有数
select SUBSTRING('sunchuangye',4); 结果:chuangye
(4)截取4之后包含4的后8位数
select SUBSTRING('sunchuangye',4,8); 结果:chuangye
(5)以str中某个字母作为分隔符,取第一或二的前边字母
select SUBSTRING_INDEX('sunchuangye','u',1); 结果:s
select SUBSTRING_INDEX('sunchuangye','u',2); 结果:sunch
6.INSTR(str,substr)返回子串第一次出现的索引,如果找不到返回0
(1)子串ch第一次出现的下标数
select INSTR('sunchaungye','ch'); 结果:4
7.Trim()函数:用来删除数据左右边(开始和结尾处)的空格。
TRIM([remstr FROM] str) :指定某个字符进行前后删除。
RTrim()函数:用来删除数据右边(结尾处)的空格。
LTrim()函数:用来删除数据左边(开始处)的空格。
(1)去除前后空格
select Trim(' sunchuangye '); 结果:sunchuangye
(2)去除前后指定的符号-
select Trim('-' from '--sunchaungye--'); 结果:sunchuangye
(3)去除前后空格
select RTrim('sunchuangye ); 结果:sunchuangye
(4)去除前后空格
select LTrim(' sunchuangye); 结果:sunchuangye
8.LPAD(str,len,padstr)用指定的字符来进行左填充指定长度
(1)在11位字符左填充4位*,够15位
select LPAD('sunchaungye',15,'*'); 结果:****sunchuangye
9.RPAD(str,len,padstr)用指定的字符来进行右填充指定长度
(1)在11位字符右填充4位*,够15位
select RPAD('sunchaungye',15,'*'); 结果:sunchuangye****
10.REPLACE(str,from_str,to_str)替换
(1)替换
select REPLACE('灰太狼爱上了喜洋洋','喜洋洋','红太狼'); 结果:灰太狼爱上了红太狼