数据库_oracle分组、子查询、表连接、行转列

本文详细介绍了Oracle数据库中的一些高级查询技术,包括如何使用group by进行数据分组,理解having与where的区别;子查询的应用,包括单行和多行子查询;行转列的方法,通过步骤展示了转换过程;以及表连接的92方式和99方式,涵盖等值连接、非等值连接、外连接的各种类型。这些技巧对于优化查询效率和数据展现非常有用。
摘要由CSDN通过智能技术生成

分组

使用group by 进行分组。对结果集进行进一步划分。

在这里插入图片描述过滤组:having , 过滤组信息 ,表达式 同 where 一致

	select 分组字段,组函数 from 表名 group by 分组字段 having 过滤组 order by 排序字段

执行步骤
–>from -->where–>group by–>having–>select --> order by

  • select 出现分组函数,就不能使用 非分组信息,可以使用 group by 字段
  • group by字段 可以不出现 select 中 ,反之select 除组函数外的,其他字段必须group by 中有。

过滤组 having :
where :过滤行记录,不能使用组函数, having:过滤组 可以使用组函数

group by 分组后。having 和select 只认识分组字段和组函数。相当于压缩了信息。

	select min(avg(sal)) from emp group by deptno;

子查询

where 语句中允许出现查询语句,这样的语句称为子查询。

单行子查询:当查询的筛选条件不明,需要执行一次查询,并且查询的结果只有一个数据。
-select * from emp where sal>(select sal from emp where ename='clark

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值