SQL模糊查询,sum,AVG,MAX,min函数

本文介绍了SQL中常用的查询技巧,包括使用LIKE进行模糊查询的方法,以及如何利用IFNULL处理NULL值。此外还讲解了聚合函数如COUNT、SUM、AVG、MAX和MIN的用法,并演示了如何通过GROUP BY实现数据分组。
cmd

mysql -hlocalhost -uroot -p
select * from emp where ename like '___'  -- 三个横线, - 代表字符,可以查询 三个ename是3个字符数据

select * from emp where job like '___员'; -- job是四个字符且以 员 字结尾
select * from emp where ename like 'm%'; --查询 ename 以 m 开头的记录,% 匹配 0 - n个任何字符
select * from emp where ename like '_u%';  -- 查询 ename 中第二个字符为 u 的记录
select * from emp where ename like '%s%'; -- 查询 ename 中包含 s 的记录


IFNULL(expr1,expr2),如果 expr1 为 null ,则 expr1 = expr2

select *,IFNULL(score1,0) + IFNULL(score2,0) form emp;   --如果score1为null ,则score1 = 0 

1387811-20180730103327928-1740680642.jpg


常用聚合函数

1387811-20180730103335255-466906325.jpg

count

select count(*) from emp;   -- 统计记录数
select count(ename) from emp; -- 统计ename 记录数,该记录字段为NULL则不统计在内
-- 统计员工表总salary大于 2500 的人数
select count(*)  from  emp where salary > 2500;

-- 统计 salary 与 performance 之和大于 5000 的人数
select count(*) from emp where salart + IFNULL(performance,0) > 5000 ; --  performance可能会为null,如果为null ,就替换为 0

sum AVG MAX min

-- 查询 salary 之和
select sum(salary) from emp;

-- 查询 salary之和,performance之和
select sum(salary), sum(performance) form emp;

-- 查询所有 salary + performance 的和
select * from sum(salart + IFNULL(performance,0)) form emp;

--  求 salary 的评价值
select AVG(salary) from emp;

-- 求最大salary  最小salary
select MAX(salary),MIN(salary) from emp;

sql 分组查询 group by

分组查询:将查询结果按一个或多个字段进行分组,字段值相同的为一组

分组使用:

  • 当 group by 单独使用时,只显示每组的第一条记录,所以,group by 单独使用意义不大
select * from emp GROUP BY gender;

1387811-20180730103348366-1388161128.jpg

转载于:https://www.cnblogs.com/friday69/p/9389266.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值