10 MySQL_字符串函数和数学函数
字符串函数
1. 字符串拼接 concat('aa','bb') ->aabb;
-
查询emp表中 员工姓名 和工资 工资后面显示单位元
select name,concat(sal,'元') from emp;
2. 获取字符串的长度 char_length('abc') 3
-
案例: 查询员工姓名和姓名的长度
select name,char_length(name) from emp;
3. 获取字符串在另一个字符串上出现的位置
-
格式1: instr(str,substr);
select instr('abcdef','c');
-
格式2 : locate(substr,str);
select locate ('c','abcdef');
4. 插入字符串
- 格式: insert ( str , start , length , newstr);
sql select insert ('abcdefg',3,2,'c');
5. 转大小写
-
格式: upper() lower()
select upper('nba'),lower('NBa');
6. 去两端空白
- 格式:trim()
select trim(' a b ');
7. 截取字符串
-
left(str,num);
select left('abcdefg',3);
-
right(str,num);
select right('abcdefg',3);
-
substring(str, start,end);
select substring('abcdefg',2); select substring('abcdefg',2,3);
8. 重复:
- repeat(str,重复次数)
select repeat('abc',2);
9.替换 :
- replace(str,替换前的值,替换后的值);
select replace('abcdef','c','x');
10. 翻转 reverse
select reverse('abc');
数学相关函数
1. 向下取整 floor(num)
select floor(3.84); 3
2. 四舍五入round(23.8); 24
- round(num,m);---m保留m位小数
select round(23.879,1);23.9
3.非四舍五入
- truncate(num,m);---m保留m位小数
select truncate(23.879,2); 23.87
- 随机数 rand() 0-1随机的小数
- 获取3,4,5的随机数
- floor(rand()*3)+3;