mysql数据库内置函数大全_(MariaDB)MySQL内置函数大全

本文详细介绍了MySQL/MariaDB的内置函数,包括字符串函数如concat()、trim()、replace()等,数学函数如ABS()、MOD()、ROUND(),以及日期时间函数如curdate()、now()。文章通过实例展示了各种函数的使用方法和效果,是数据库操作的重要参考资料。
摘要由CSDN通过智能技术生成

本文目录:

1. 字符串函数

1.1 字符串连接函数

1.2 lower()、upper()、left()、right()

1.3 填充函数lpad()和rpad()

1.4 trim()、ltrim()、rtrim()及trim()

1.5 字符串重复函数repeat()

1.6 字符串替换函数replace()

1.7 字符串插入替换函数insert()

1.8 字符串提取substring()

1.9 字符串比较函数strcmp()

1.10 字符串长度函数length()和char_length()

1.11 字符串位置函数locate()、position()和instr()

1.12 字符串位置函数find_in_set()

1.13 字符串位置函数field()

1.14 指定位置的字符串函数elt()

1.15 字符串反转函数reverse()

2. 数学函数

2.1 绝对值函数ABS()

2.2 取模函数mod()

2.3 四舍五入函数round()

2.4 位数截断函数truncate()

2.5 地板函数floor()和天花板函数ceiling()

2.6 随机函数rand()

2.7 最值函数least()

2.8 最值函数greastest()

3. 日期时间函数

3.1 当前日期时间

3.2 week()

3.3 year()、monthname()、quarter()

3.4 hour()、minute()、second()

3.5 extract()

3.6 dayname()和dayofweek()

3.7 日期时间格式化

3.8 日期时间计算

3.9 datediff()

3.10 LAST_DAY()

4. 流程控制之条件判断函数

4.1 if()

4.2 ifnull()

4.3 nullif()

4.4 case语句

5. 类型转换函数

6. 其它实用函数

MySQL/MariaDB的内置函数比较多,这里挑选一部分进行解释,完整的内置函数列表见

1. 字符串函数

完整的内置字符串函数见

1.1 字符串连接函数

有两个字符串连接函数:concat(s1,s2,s3,...,sN)和concat_ws(sep,s1,s2,s3,...,sN)。

concat()将多个字符串连接起来形成一个长字符串。它会尝试将字符全部转换为字符型,如果存在null,则直接返回null。

mysql> select concat('a','b',1),concat(1,2,3),concat('a',null);

+-------------------+---------------+------------------+

| concat('a','b',1) | concat(1,2,3) | concat('a',null) |

+-------------------+---------------+------------------+

| ab1 | 123 | NULL |

+-------------------+---------------+------------------+

1 row in set

concat_ws(sep,s1,s2,...,sN)函数是concat()函数的特殊格式,它的第一个参数sep是用于连接s1,s2,...,sN的分隔符。分隔符可以是一个字符或一个字符串,只要合理即可。如果分隔符sep为null,则返回结果null,如果s1,s2,...,sN之间出现了null,则忽略null。

mysql> select concat_ws(':','23','59','58'),concat_ws('-','1st','2nd'),concat_ws('XXX','wo','shi');

+-------------------------------+----------------------------+-----------------------------+

| concat_ws(':','23','59','58') | concat_ws('-','1st','2nd') | concat_ws('XXX','wo','shi') |

+-------------------------------+----------------------------+-----------------------------+

| 23:59:58 | 1st-2nd | woXXXshi |

+-------------------------------+----------------------------+-----------------------------+

1 row in set

mysql> select concat_ws(':','23','59',null,'58'),concat_ws(null,'1st','2nd');

+------------------------------------+-----------------------------+

| concat_ws(':','23','59',null,'58') | concat_ws(null,'1st','2nd') |

+------------------------------------+-----------------------------+

| 23:59:58 | NULL |

+------------------------------------+-----------------------------+

1 row in set

由于concat()遇到null时总会返回null,这种处理方式可能并非所期望的结果,因此可以采用concat_ws()的方式忽略null或者采用ifnull()的方式将null转换为空字符串。

1.2 lower(string)、upper(string)、left(string,x)、right(string,x)

分别是变小写、变大写、从左取x长度字符、从右取x长度字符。

mysql> select lower('MaLong'),upper('MaLong'),left('MaLong',3),right('Malong',3);

+-----------------+-----------------+------------------+-------------------+

| lower('MaLong') | upper('MaLong') | left('MaLong',3) | right('Malong',3) |

+-----------------+-----------------+------------------+-------------------+

| malong | MALONG | MaL | ong |

+-----------------+-----------------+------------------+-------------------+

1 row in set

1.3 填充函数

有两种:lpad(string,n,pad)和rpad(string,n,pad)。

使用pad对string最左边和最右边进行填充,直到填充后总长度为n个字符。pad可以是一个字符串,如果是字符串则从左向右取直到符合长度为止。

mysql> select lpad('MaLong',10,'x'),lpad('MaLong',10,'xy'),rpad('MaLong&#

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值