MySQL不仅是个数据库,里面还有很多内置函数,学会这些内置函数,我们将更好的处理数据,得到我们想要的结果,话不多说,我们现在开始啦
1.日期函数
| 函数名称 | 描述 |
|---|---|
| current_date() | 当前日期 |
| current_time() | 当前时间 |
| current_timestamp() | 当前时间戳 |
| date(datetime) | 返回datetime参数的日期部分 |
| date_add(date, interval d_value_type) | 在date中添加日期或时间interval后的数值,单位可以是:year, minute, second, day |
| date_sub(date, interval d_value_type) | 在date中减去日期或时间interval后的数值,单位可以是:year, minute, second, day |
| datediff(date1, date2) | 两个日期的差,单位是天 |
| now() | 当前日期时间 |
1.current_date

2.current_time

3.current_timestamp

4.date_add
在 DATE_ADD 和 DATE_SUB 中,INTERVAL 是一个关键字(不是函数,也不是参数名),用来指明要添加或减去的时间长度
格式:
INTERVAL 数值 单位常见单位:
YEAR,MONTH,DAY,HOUR,MINUTE,SECOND

5.date_sub

6.datediff


7.date
8.now

9.案例


2.字符串函数
| 函数名称 | 描述 |
|---|---|
| charset(str) | 返回字符串字符集 |
| concat(string2 [, ...]) | 连接字符串 |
| instr(string, substring) | 返回substring在string中出现的位置,没有返回0 |
| ucase(string2) | 转换成大写 |
| lcase(string2) | 转换成小写 |
| left(string2, length) | 从string2中的左边起取length个字符 |
| length(string) | string的长度 |
| replace(str, search_str, replace_str) | 在str中用replace_str替换search_str |
| strcmp(string1, string2) | 逐字符比较两个字符串大小 |
| substring(str, position[, length]) | 从str的position开始,取length个字符,没有length就默认全部 |
| ltrim(string)/rtrim(string)/trim(string) | 去除前空格或后空格 |
1.charset(str)

2.concat(string2 [, ...])

3.instr(string, substring)

4.ucase(string2) 与 lcase(string2)

5.left(string2, length) 与 right(string2, length)

6.length(string)

7.substring(str, position[, length])

8.ltrim(string)/rtrim(string)/trim(string)

9.案例
1.要求显示exam表中的信息,显示格式:"XXX的语文是XXX分,数学XXX分,英语XXX分"

2.以首字母小写的方式显示所有学生的姓名

3.数学函数
| 函数名称 | 描述 |
|---|---|
| abs(number) | 绝对值函数 |
| bin(decimal_number) | 十进制转换二进制 |
| hex(decimalNumber) | 转换成十六进制 |
| conv(number, from_base, to_base) | 进制转换 |
| ceiling(number) | 向上取整 |
| floor(number) | 向下取整 |
| format(number, decimal_places) | 格式化,保留小数位数 |
| rand() | 返回随机浮点数,范围[0.0, 1.0] |
| mod(number, denominator) | 取模,求余 |
1.abs(number)

2.bin(decimal_number)

3.hex(decimalNumber)

4.conv(number, from_base, to_base)

5.ceiling(number) 与 floor(number)
ceiling:

floor:

6.format(number, decimal_places)

7.rand()

8.mod(number, denominator)

4.其它函数
1.user()
查询当前用户 -> select user();

2.md5(str)
对一个字符串进行md5摘要,摘要后得到一个32位字符串 -> select md5(str);

3.database()
显示当前正在使用的数据库 -> select database();

4.password()
MySQL数据库使用该函数对用户加密 -> select password(str);
不过这个函数在 MySQL 5.7.6 版本后就已被标记为废弃 (deprecated),并在 MySQL 8.0 版本中被彻底移除
