select from 具体执行

Posted duanwandao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了select from 具体执行相关的知识,希望对你有一定的参考价值。

预先准备

create table p(
       name varchar2(10)
);

insert into p values(黄伟福);
insert into p values(赵洪);
insert into p values(杨华);

每条语句执行三次插入

select rowid,p.* from p;

技术分享图片

select distinct * from p;

技术分享图片

 

 查询最小rowID,只返回了一条数据

select min(rowid) from p p1 where p1.name = p1.name

技术分享图片

 

 查询每个重复名字的最小rowID,注意子查询返回的是3条数据,并不是一条,思考一下具体执行顺序

select rowid,p1.* from p p1 where rowid = (select min(rowid) from p p2 where p1.name = p2.name);

技术分享图片

 

删除重复数据,只保存数据中的最小rowID ,然后查询

delete from p p1 where rowid > (select min(rowid) from p p2 where p1.name = p2.name);
select rowid,p.* from p;

技术分享图片

 

以上是关于select from 具体执行的主要内容,如果未能解决你的问题,请参考以下文章

Discuz代码片段

齐博分类系统漏洞分析

有关sql语句 exist的问题

关于oracle存储过程select into 未找到数据问题

hive高阶1--sql和hive语句执行顺序explain查看执行计划group by生成MR

一文让你彻底理解SELECT语句的执行逻辑