调用过程: select 函数名(实参列表) from 表;
分类: 单行函数与分组函数
单行函数
单行函数可分为
一.字符函数
1.length()获取参数值的字节个数
SELECT LENGTH('john')
2.Concat() 拼接字符串
将firstname 与 lastname 拼接一下
SELECT CONCAT(last_name,'_',first_name) 姓名 FROM employees
3. upper() 与 lower 转换大写与小写
SELECT UPPER('john')
SELECT lower('JOHN你')
4.substr / substring 截取字符 从1开始
SELECT SUBSTR('李莫愁爱上了路展元',1,3)
5.instr() 返回字串第一次出现的索引,如果找不到返回0
SELECT INSTR('我在想今天早上吃什么','今天')
6. TRIM(s) 去掉字符串s开始与结尾的字符
SELECT TRIM(' 小明 ')
SELECT TRIM('a'from'aaaa小明aaaaa')
去掉前后的字母
7.lpad() / rpad() 用字符左/右填充至指定的长度
SELECT RPAD('小明',12,'q')
8.replace() 替换
SELECT REPLACE('小明','小明','小红')
把小明替换为小红
计算俩日期之间的差 DATEDIFF()
查询员工表中的最大入职时间和最小入职时间的相差天数(DIFFRENCE)
SELECT DATEDIFF(MAX(hiredate),MIN(hiredate)) DIFFRENCE
FROM employees;
二.数学函数
1. round() 四舍五入
SELECT ROUND(1.45)
SELECT ROUND(1.456,1)
小数点后保留1位
2.ceil() 向上取整
SELECT ceil(1.01)
3.floor() 向下取整
SELECT FLOOR (1.01)
4.TRUNCATE() 小数点后截断
SELECT TRUNCATE(1.123456,2)
5.mod() 取余
SELECT mod(11,2)
三.日期函数
1.now() 返回当前系统日期+时间
SELECT NOW()
2. curdate() 只返回日期没有时间
SELECT CURDATE()
3. curtime() 只返回时间 无日期
SELECT CURTIME()
4. YEAR(date) / MONTH(date) / DAY(date) / HOUR(time) / MINUTE(time) / SECOND(time) 返回指定部分的 年,月,日
SELECT MONTH(NOW())
5.str_to data 将日期格式的字符转换成指定格式的日期
查询入职日期为 1992-4-3的员工信息
SELECT * FROM employees WHERE hiredate = STR_TO_DATE('4-3 1992', '%c-%d %Y')
6.date_format() 将日期转换为字符
查询有奖金的员工名与入职日期
SELECT
last_name,
DATE_FORMAT(hiredate,'%m月/%d日 %y年'
) 入职日期
FROM
employees
WHERE
commission_pct IS NOT NULL
四.其他函数
select version() 查看版本
select DATABASE(); 查看当前库
select user() 查看当前用户