您现在的位置是:网站首页> 编程资料编程资料
mysql函数全面总结_Mysql_
2023-05-26
424人已围观
简介 mysql函数全面总结_Mysql_
1、MySQL中常用字符串函数
| 函数 | 功能 |
CANCAT(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,x) | 返回 str 重复 x 次的结果 |
REPLACE(str,a,b) | 用字符串 b 替换字符串 str 中所有出现的字符串 a |
STRCMP(s1,s2) | 比较字符串 s1 和 s2 |
TRIM(str) | 去掉字符串行尾和行头的空格 |
SUBSTRING(str,x,y) | 返回从字符串 str x 位置起 y 个字符长度的字串 |
1:CANCAT(S1,S2,…Sn)函数,把传入的参数连接成为一个字符串。
注意:和null拼接后直接返回NULL
mysql> select concat('aaa','bbb','d'),concat('dd',null); +-------------------------+-------------------+ | concat('aaa','bbb','d') | concat('dd',null) | +-------------------------+-------------------+ | aaabbbd | NULL | +-------------------------+-------------------+ 1 row in set (0.00 sec) 2:INSERT(str ,x,y,instr)函数:将字符串 str 从第 x 位置开始,y 个字符长的子串替换为字符串 instr。
将字符串“123456”中从第3个字符开始,后面的3个字符替换成“me”
mysql> select insert('123456',3,3,'me'); +---------------------------+ | insert('123456',3,3,'me') | +---------------------------+ | 12me6 | +---------------------------+ 1 row in set (0.02 sec) 3:LOWER(str)和 UPPER(str)函数:把字符串转换成小写或大写。
mysql> select lower("ZHANG"),upper("zhang"); +----------------+----------------+ | lower("ZHANG") | upper("zhang") | +----------------+----------------+ | zhang | ZHANG | +----------------+----------------+ 1 row in set (0.00 sec) 4:LEFT(str,x)和 RIGHT(str,x)函数:分别返回字符串最左边的 x 个字符和最右边的 x 个字符。注意:如果第二个参数是 NULL,那么将不返回任何字符串。
mysql> select left('zhang',2),left('zhang',null),right('zhang',2),left('zhang',10); +-----------------+--------------------+------------------+------------------+ | left('zhang',2) | left('zhang',null) | right('zhang',2) | left('zhang',10) | +-----------------+--------------------+------------------+------------------+ | zh | NULL | ng | zhang | +-----------------+--------------------+------------------+------------------+ 1 row in set (0.00 sec) 5:LPAD(str,n ,pad)和 RPAD(str,n ,pad)函数:用字符串 pad 对 str 最左边和最右边进行填充,直到长度为 n 个字符长度。
mysql> select lpad('bin',8,'zhang'),rpad('zhang',8,'bin'),rpad('beijing',20,'2008'); +-----------------------+-----------------------+---------------------------+ | lpad('bin',8,'zhang') | rpad('zhang',8,'bin') | rpad('beijing',20,'2008') | +-----------------------+-----------------------+---------------------------+ | zhangbin | zhangbin | beijing2008200820082 | +-----------------------+-----------------------+---------------------------+ 1 row in set (0.00 sec) 6:LTRIM(str)和 RTRIM(str)函数:去掉字符串 str 左侧和右侧空格。
mysql> select ' zhang',ltrim(' zhang'),rtrim('zhang '); +----------+-------------------+--------------------+ | zhang | ltrim(' zhang') | rtrim('zhang ') | +----------+-------------------+--------------------+ | zhang | zhang | zhang | +----------+-------------------+--------------------+ 1 row in set (0.00 sec) 7:REPEAT(str,x)函数:返回 str 重复 x 次的结果。
mysql> select repeat('mysql',5); +---------------------------+ | repeat('mysql',5) | +---------------------------+ | mysqlmysqlmysqlmysqlmysql | +---------------------------+ 1 row in set (0.00 sec) 8:REPLACE(str,a,b)函数:用字符串 b 替换字符串 str 中所有出现的字符串 a。
mysql> select replace('mysql','sql','ddd'); +------------------------------+ | replace('mysql','sql','ddd') | +------------------------------+ | myddd | +------------------------------+ 1 row in set (0.00 sec) 9:STRCMP(s1,s2)函数:比较字符串 s1 和 s2 的 ASCII 码值的大小。如果 s1 比 s2 小,那么返回-1;如果 s1 与 s2 相等,那么返回 0;如果 s1 比 s2 大,那么返回 1。
mysql> select strcmp('a','b'),strcmp('b','b'),strcmp('c','b'),strcmp('a','A'); +-----------------+-----------------+-----------------+-----------------+ | strcmp('a','b') | strcmp('b','b') | strcmp('c','b') | strcmp('a','A') | +-----------------+-----------------+-----------------+-----------------+ | -1 | 0 | 1 | 0 | +-----------------+-----------------+-----------------+-----------------+ 1 row in set (0.01 sec) 10:TRIM(str)函数:去掉目标字符串的开头和结尾的空格。
mysql> select trim(' 111 $ mysql $ '); +-----------------------------+ | trim(' 111 $ mysql $ ') | +-----------------------------+ | 111 $ mysql $ | +-----------------------------+ 1 row in set (0.01 sec) 11:SUBSTRING(str,x,y)函数:返回从字符串 str 中的第 x 位置起 y 个字符长度的字串。
mysql> select substring('mysqlisdd',4,4); +----------------------------+ | substring('mysqlisdd',4,4) | +----------------------------+ | qlis | +----------------------------+ 1 row in set (0.00 sec) 2、数值函数
函数 | 功能 |
ABS(x) | 返回 x 的绝对值 |
CEIL(x) | 返回大于 x 的最大整数值 |
FLOOR(x) | 返回小于 x 的最大整数值 |
MOD(x,y) | 返回 x/y 的模 |
RAND() | 返回 0 到 1 内的随机值 |
ROUND(x,y) | 返回参数 x 的四舍五入的有 y 位小数的值 |
TRUNCATE(x,y) | 返回数字 x 截断为 y 位小数的结果 |
1: ABS(x)函数:返回 x 的绝对值。
mysql> select abs(-0.3),abs(0.3); +-----------+----------+ | abs(-0.3) | abs(0.3) | +-----------+----------+ | 0.3 | 0.3 | +-----------+----------+ 1 row in set (0.36 sec)
2:CEIL(x)函数,返回大于x的最大整数
mysql> select ceil(-0.2),ceil(0.2); +------------+-----------+ | ceil(-0.2) | ceil(0.2) | +------------+-----------+ | 0 | 1 | +------------+-----------+ 1 row in set (0.00 sec)
3:FLOOR(x)函数,返回小于x的最大整数,和CEIL刚好相反
mysql> select floor(-0.2),floor(0.2); +-------------+------------+ | floor(-0.2) | floor(0.2) | +-------------+------------+ | -1 | 0 | +-------------+------------+ 1 row in set (0.00 sec)
4:MOD(x,y)函数:返回 x/y 的模。和 x%y 的结果相同,模数和被模数任何一个为 NULL 结果都为 NULL。如下例所示:
mysql> select mod(15,10),mod(1,11),mod(null,10); +------------+-----------+--------------+ | mod(15,10) | mod(1,11) | mod(null,10) | +------------+-----------+--------------+ | 5 | 1 | NULL | +------------+-----------+--------------+ 1 row in set (0.00 sec)
5:RAND()函数,返回0到1之间的随机数
mysql> select rand(),rand(); +-------
点击排行
本栏推荐
