MySQL 语法复习

MySQL(返璞归真)

1 . Limit的用法

select * from Customer LIMIT i,10;
# 从 i+1条开始累加10条数据,i = 0 可以省略
# 检索从第2行开始,累加10条id记录,共显示id为2....11

2 Order by

select  id from study order by id
# 默认asc排序升序 desc降序 

3 Group by

GROUP BY 将分组字段结果中相同内容作为一组,并且返回每组的第一条数据,所以单独分组没什么用处。
分组的目的就是为了统计,一般分组会跟聚合函数一起使用。
-- 按性别进行分组,求男生和女生数学的平均分
select sex, avg(math) from student group by sex;

4 MySQL中的聚合函数

-- 查询年龄大于 20 的总数
select count(*) from student where age>20;
-- 查询数学成绩总分
select sum(math) 总分 from student;
-- 查询数学成绩平均分
select avg(math) 平均分 from student;
-- 查询数学成绩最高分
select max(math) 最高分 from student;
-- 查询数学成绩最低分
select min(math) 最低分 from student;

5 having 和 where的区别

子名作用
where1) 对查询结果进行分组前,将不符合 where 条件的行去掉,即在分组之前过滤数据,即先过滤再分组。2) where 后面不可以使用聚合函数
having1) having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,即先分组再过滤。2) having 后面可以使用聚合函数

6 Distinct和Group by 去重

select DISTINCT country FROM Websites;
# distinct 一般用来查询不会重复记录的条数
select id from study order by id

select distinct id, name from web
# distinct会对id和name进行去重

7 连接

1. 内连接
 select * from emp e inner join dept d on e.`dept_id` = d.`id`;
2. 外连接
select * from dept d left join emp e on d.`id` = e.`dept_id`; // 左外连接
select * from dept right join emp on dept.`id` = emp.`dept_id`; // 右外连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值