视频学习链接 https://www.bilibili.com/video/av59623481/?p=58
调用:select 函数名(实参) [from 表];
关注点:
1. 函数名
2. 函数功能
分类:
1. 单行函数:处理数据
2. 分组函数:做统计使用,又称为统计函数、聚合函数、组函数
一、单行函数
1、字符函数
concat拼接
substr截取子串
upper转换成大写
lower转换成小写
trim去前后指定的空格和字符
ltrim去左边空格
rtrim去右边空格
replace替换
lpad左填充
rpad右填充
instr返回子串第一次出现的索引
length 获取字节个数
2、数学函数
round 四舍五入
rand 随机数
floor向下取整
ceil向上取整
mod取余
truncate截断
3、日期函数
now当前系统日期+时间
curdate当前系统日期
curtime当前系统时间
str_to_date 将字符转换成日期
date_format将日期转换成字符,指定格式
4、流程控制函数
if 处理双分支
起到了if else的效果,if(expr1, expr2, expr3)
case语句 处理多分支
情况1:处理等值判断
例:
SELECT salary AS '原始工资', department_id,
CASE department_id
WHEN 30 THEN salary*1.1
WHEN 40 THEN salary*1.2
WHEN 50 THEN salary*1.3
ELSE salary
END
FROM employees;
情况2:处理条件判断
例:SELECT salary,
CASE
WHEN salary > 20000 THEN 'A'
WHEN salary > 15000 THEN 'B'
WHEN salary > 10000 THEN 'C'
ELSE 'D'
END AS 工资级别
FROM employees;
5、其他函数
version版本
database当前库
user当前连接用户
二、分组函数
sum 求和
max 最大值
min 最小值
avg 平均值
count 计数
特点:
1、以上五个分组函数都忽略null值,除了count(*)
2、sum和avg一般用于处理数值型
max、min、count可以处理任何数据类型
3、都可以搭配distinct使用,用于统计去重后的结果:SELECT SUM(salary), SUM(DISTINCT salary) FROM employees;
4、count的参数可以支持:
统计个数:
1. 字段、*、常量值,一般放1
2. 建议使用 count(*)