MySQL 内置函数
1. 简介
MySQL 是一种广泛使用的关系型数据库管理系统,为了方便用户进行数据处理和操作,MySQL 提供了许多内置函数。这些内置函数可以帮助我们完成各种常见的数据操作,如数学运算、字符串处理、日期时间计算等。在本文中,我们将深入探讨一些常用的 MySQL 内置函数,并给出相应的示例代码和运行结果。
2. 数学函数
2.1 ABS
函数功能:计算给定数的绝对值。
语法:ABS(number)
参数解释:
- number:要计算绝对值的数字。
示例代码:
SELECT ABS(-10); -- 结果为 10
SELECT ABS(3.14); -- 结果为 3.14
2.2 ROUND
函数功能:按照指定的小数位数对数字进行四舍五入。
语法:ROUND(number, digits)
参数解释:
- number:要进行四舍五入的数字。
- digits:保留的小数位数,默认为 0。
示例代码:
SELECT ROUND(3.14159); -- 结果为 3
SELECT ROUND(3.14159, 2); -- 结果为 3.14
2.3 CEIL
函数功能:向上取整,返回不小于指定数字的最小整数。
语法:CEIL(number)
参数解释:
- number:要进行向上取整的数字。
示例代码:
SELECT CEIL(3.1); -- 结果为 4
SELECT CEIL(-3.1); -- 结果为 -3
2.4 FLOOR
函数功能:向下取整,返回不大于指定数字的最大整数。
语法:FLOOR(number)
参数解释:
- number:要进行向下取整的数字。
示例代码:
SELECT FLOOR(3.9); -- 结果为 3
SELECT FLOOR(-3.9); -- 结果为 -4
3. 字符串函数
3.1 CONCAT
函数功能:将两个或多个字符串连接起来。
语法:CONCAT(string1, string2, …)
参数解释:
- string1, string2, …:要连接的字符串。
示例代码:
SELECT CONCAT('Hello', 'World'); -- 结果为 HelloWorld
SELECT CONCAT('Today', ' is', ' a', ' good', ' day'); -- 结果为 Today is a good day
3.2 SUBSTRING
函数功能:返回指定字符串的子串。
语法:SUBSTRING(string, start, length)
参数解释:
- string:要截取子串的字符串。
- start:子串的起始位置,从 1 开始计数。
- length:子串的长度,默认为截取到字符串的末尾。
示例代码:
SELECT SUBSTRING('Hello World', 7); -- 结果为 World
SELECT SUBSTRING('Hello World', 7, 3); -- 结果为 Wor
3.3 UPPER 和 LOWER
函数功能:将字符串转换为大写或小写。
语法:
- UPPER(string):将字符串转换为大写。
- LOWER(string):将字符串转换为小写。
参数解释:
- string:要转换的字符串。
示例代码:
SELECT UPPER('hello'); -- 结果为 HELLO
SELECT LOWER('WORLD'); -- 结果为 world
4. 日期时间函数
4.1 NOW
函数功能:返回当前日期和时间。
语法:NOW()
参数解释:无
示例代码:
SELECT NOW(); -- 结果为当前日期和时间,如 2021-01-01 10:30:00
4.2 DATE_FORMAT
函数功能:将日期时间按照指定的格式进行格式化。
语法:DATE_FORMAT(date, format)
参数解释:
- date:要进行格式化的日期时间。
- format:日期时间格式,如 “%Y-%m-%d” 表示以年-月-日的格式输出。
示例代码:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d'); -- 结果为当前日期,如 2021-01-01
SELECT DATE_FORMAT(NOW(), '%Y年%m月%d日 %H时%i分%s秒'); -- 结果为当前日期和时间,如 2021年01月01日 10时30分00秒
5. 总结
本文介绍了 MySQL 中一些常用的内置函数,包括数学函数、字符串函数和日期时间函数。通过这些内置函数,我们可以方便地进行数值计算、字符串处理以及日期时间的转换和格式化。在实际的数据库应用中,我们可以根据具体的需求选择合适的函数来完成相应的数据操作。