字符串函数
concat()
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
length()
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
lower()upper()
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
replace(目标字符串,查找的子串,新字符串)
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
substring(目标字符串,开始位置,长度)截取子串
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
数字函数
(1)abs()
作用:取绝对值
例如:select abs(1),abs(-1)
(2)pi()
作用:获取圆周率
例如:select pi()
(3)mod()
作用:取模
例如:select mod(3,2)
(4)pow()
作用:求一个数的n次方
例如:select pow(3,2)
(5)ceil() floor()
ceil():向上取整
floor():向下取整
例如:select ceil(5.43),floor(5.7)
(6)round()
round(num):返回四舍五入的整数
round(num,n):返回四舍五入n位小数
例如:select round(5.4),round(6.8),round(5.34,1),round(6.789,2)
(7)truncate()
truncate(num,n) 其中n的取值可以是0,1,2..如果n取值为0代表截取整数
例如:select truncate(5.3,0),truncate(5.67,1),truncate(5.789,2)
(8)rand()
作用:获取浮点类型的随机数,范围0-1.0 其中包括0但不包括1
例如:select rand(),rand(),rand()
日期时间函数
(1)now()获取当前日期和时间 包括年月日 时分秒
例如 select now()
(2)curdate()获取当前日期 只包括年月日
例如:select curdate()
(3)curtime()获取当前时间 只包括时分秒
例如:select curtime();
(4)sysdate()获取函数执行时的日期和时间
now()获取SQL执行时的日期和时间
例如:select sysdate(),now()
select sysdate(),now(),sleep(2),sysdate(),now()
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
![bff3c88497dcf6a593dc79156627605c.png](https://i-blog.csdnimg.cn/blog_migrate/29832a622ebb7b3dcda36810142762d0.png)
(5)dayofyear()获取某个日期是所在年份的第几天
week()获取某个日期是所在年份的第几周
例如:select dayofyear(now()),week(now())
(6)datediff()计算两个日期之间的时间间隔
例如:计算2019-1-1距离现在时间间隔
select datediff('2019-1-1',now())
(7)date_add() date_sub() 实现日期的加减运算
date_add(日期,时间间隔类型关键字interval 时间间隔类型对应的表达式 时间间隔类型)
例如 day_hour 1_12 代表 1天12小时
year_month 2_1 代表 2年1个月
select date_add(now(),interval '2_1' year_month)
select date_sub(now(),interval 10 day)