group by 分组查询、分页查询、连表查询

本文介绍了SQL中的三种查询方法:使用INNER JOIN进行表连接,GROUP BY进行分组查询,以及分页查询。通过示例展示了如何通过INNER JOIN结合聚合函数在不同场景下操作数据,同时提供了分页查询的基本格式和LIMIT关键字的用法,以及GROUP BY用于数据分组的基本语法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、左连接查询: RIGHT JOIN 
以左表为准,去右表查找;如果没有匹配的数据,所以输出结果数>=左表原数据


2、右连接查询:LEFT JOIN

以右表为准,去左表查找;如果没有匹配的数据,所以输出结果数>=右表原数据


3、内连接查询:INNER JOIN 

例子:我们班的名字叫王猛;

第一种:inner join:

select 字段名1 as 别名1,字段名2 as 别名2....from 表名1 inner join 表名2 on 条件



SELECT * FROM (SELECT sum(sal),avg(sal),count(sal),deptno from emp GROUP BY deptno) a INNER JOIN dept d ON a.deptno=d.deptno





第二种:inner join:

SELECT 别名1.*,别名2.* FROM 表名1 as 别名1 , 表名2 as 别名2 WHERE 条件 



SELECT e.deptno "部门编号",sum(e.sal) "总工资", avg(e.sal) "平均工资",d.dname "部门名称" FROM emp e,dept d

WHERE e.deptno=d.deptno GROUP BY d.deptno




4、having:group by后面条件用having;







5、between...and..



分页查询:
格式:select * from(select rownum r,a.*from(?) a)where r between ? and ?
select*from 表名 limit start,snm;



group by 分组查询:
group by 后面的字段相同的为一组;

   语法:SELECT * FROM表名GROUP BY字段名



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值