十二、MySQL基础系列笔记之常用函数-字符串与数值函数
在MySQL数据库中,函数可以用在SELECT语句及其子句(如where、order by、having等)中,也可以用在update、delete语句及其子句中。
字符串函数
字符串函数是最常用的一种函数,如下:
函数 | 说明 |
---|---|
concat(s1,s2...,sn) | 连接s1,s2,...sn为一个字符串 |
insert(str,x,y,instr) | 将字符串str从第x位置开始,y个字符长的子串替换为字符串instr |
lower(str) | 将字符串str中所有字符串变为小写 |
upper(str) | 将字符串str中所有字符串变为大写 |
left(str,x) | 返回字符串str最左边的x个字符 |
right(str,x) | 返回字符串str最右边的x个字符 |
lpad(str,n,pad) | 用字符串pad对str最左边进行填充,直到长度为n个字符长度 |
rpad(str,n,pad) | 用字符串pad对str最右边进行填充,直到长度为n个字符长度 |
ltrim(str) | 去掉字符串str左侧的空格 |
rtrim(str) | 去掉字符串str右侧的空格 |
repeat(str,a,b) | 返回str重复x次的结果 |
replace(str,a,b) | 用字符串b替换字符串str中所有出现的字符串a |
strcmp(s1,s2) | 比较字符串s1和s2 |
trim(str) | 去掉字符串行尾和行头的空格 |
substring(str,x,y) | 返回从字符串str x位置起y个字符长度的空格 |
concat(s1,s2...)-拼接字符串
注意:任何字符串与NULL进行连接的结果都为NULL。
insert(str,x,y,instr)-字符串替换-将字符串str中所有字符串变为小写
mysql> select insert('ziruchu.com',9,3,'自如初');
+---------------------------------------+
| insert('ziruchu.com',9,3,'自如初') |
+---------------------------------------+
| ziruchu.自如初 |
+---------------------------------------+
1 row in set (0.00 sec)
数值函数
函数 | 说明 |
---|---|
abs(x) | 返回x的绝对值 |
ceil(x) | 返回大于x的最小整数值。如1.2,1.6返回2 |
floor(x) | 返回小于x的最大整数值。如1.2,1.6返回1 |
mod(x,y) | 返回x/y的模 |
rand() | 返回0~1内的随机值 |
round(x,y) | 返回参数x的四舍五入的有y位的小数值 |
truncate(x,y) | 返回数字x截断为y位的小数结果 |
ceil与floor
mysql> select ceil(1.1),ceil(1.5),floor(1.1),floor(1.5);
+-----------+-----------+------------+------------+
| ceil(1.1) | ceil(1.5) | floor(1.1) | floor(1.5) |
+-----------+-----------+------------+------------+
| 2 | 2 | 1 | 1 |
+-----------+-----------+------------+------------+
1 row in set (0.00 sec)
truncate与round的区别在于truncate是截断,而round进行了四舍五入
mysql> select round(1.244,2),round(1.245,2),truncate(1.245,2);
+----------------+----------------+-------------------+
| round(1.244,2) | round(1.245,2) | truncate(1.245,2) |
+----------------+----------------+-------------------+
| 1.24 | 1.25 | 1.24 |
+----------------+----------------+-------------------+
1 row in set (0.00 sec)
请登录后再评论