1、oracle伪列 rowNUM
select * from(select rownum no,* from table) where no>2 and no<3;
分页效率高于
select * from (select rownum no,* from tablewhere rownum<=3 ) where no >=2;
2 删除重复记录方法很多,列出两种。
⑴ 通过创建临时表
可以把数据先导入到一个临时表中,然后删除原表的数据,再把数据导回原表,SQL
语句如下:
SQL>create table stu_tmp as select distinct* from stu;
SQL>truncate table sut; //清空表记录
SQL>insert into stu select * from stu_tmp; //将临时表中的数据添加回原表
这种方法可以实现需求,但是很明显,对于一个千万级记录的表,这种方法很慢,在生
产系统中,这会给系统带来很大的开销,不可行。
⑵ 利用 rowid结合 max或 min函数
使用rowid 快速唯一确定重复行结合max 或min 函数来实现删除重复行。
SQL>delete from stu a where rowid not in (select max(b.rowid) from stu b where a.no=b.no and
a.name = b.name and a.sex = b.sex);
//这里max 使用min 也可以或者用下面的语句
SQL>delete from stu a where rowid < (select max(b.rowid) from stu b where a.no=b.no and
a.name = b.name and a.sex = b.sex);
//这里如果把max 换成min 的话,前面的where 子句中需要把"<"改为">"
跟上面的方法思路基本是一样的,不过使用了group by,减少了显性的比较条件,提高
效率。
SQL>delete from stu where rowid not in (select max(rowid) from stu t group by t.no, t.name,
t.sex );
思考:若在stu 表中唯一确定任意一行数据(1, 'ab',’男’),把sex 字段更新为”女”,怎
么做?
SQL>update stu set sex=’ 女’ where rowid=(select min(rowid) from stu where no=1 and
name=’ab’ and sex=’男’);
三、ROWNUM和ROWID
相关推荐
以下是对"Oracle的SQL语句的一些经验总结"中可能涉及的关键知识点的详细阐述: 1. **基本查询**:SQL的基础是SELECT语句,用于从表中提取数据。例如,`SELECT column1, column2 FROM table_name;`用于获取指定列的...
### ORACLE中SQL查询优化技术 #### 一、引言 在现代企业级数据库应用中,Oracle数据库因其高性能、高可靠性和丰富的功能被广泛采用。然而,在实际的应用场景下,即使是设计良好的数据库系统也可能因为查询效率低下...
本文档由一位经验丰富的数据库管理员(DBA)撰写,旨在总结一系列最佳实践,帮助开发人员在编写SQL语句时更加高效、准确。 #### 二、SQL语句基本编码规范 ##### 2.1 英文字母编写 - **规范要求**:SQL语句中除存储...
总结,"Oracle SQL语法大全"涵盖了Oracle SQL的各个方面,无论你是初学者还是有经验的数据库管理员,都能从中获取宝贵的知识,提升你的数据库操作技能。通过深入学习和实践,你将能够更好地理解和利用Oracle数据库的...
通过阅读"sql优化经验总结V1.5.ppt"和"sql优化经验总结.ppt",可以更深入地学习到更多实用技巧和案例分析,进一步提升在Oracle SQL优化方面的能力。不断学习和实践,才能在这个领域取得更大的成就。
Oracle SQL 是 Oracle 数据库中用于查询、管理数据的核心语言。它基于标准 SQL 语法,但在许多方面进行了扩展和增强,提供了更为丰富的特性和更高效的数据处理能力。 ##### 2. SQL 的三要素 - **语言特征**:包括...
### SQL优化经验总结34条深度解读 #### (1) 最优表名顺序:提升查询效率 在基于规则的优化器中,Oracle按照从右至左的顺序处理FROM子句中的表名。为了提高查询效率,应将记录条数最少的表置于FROM子句的最后,作为...
### Oracle SQL Reference 知识点概述 #### 一、Oracle SQL Reference 概述 - **文档版本**: 该文档为Oracle Database SQL Language Reference 11g Release 2 (11.2)版本,出版日期为2012年12月。 - **版权信息**: ...
### SQL优化经验总结34条 #### 一、选择最有效率的表名顺序 - **要点**: 在基于规则的优化器(RBO)中,Oracle解析器从右至左处理FROM子句中的表名。为了提高性能,应将记录条数最少的表放在最后,即作为基础表。...
这本"Oracle SQL必备参考"PDF文档,很可能是对Oracle SQL语法、函数、操作及最佳实践的全面总结,旨在帮助用户深入理解和有效利用SQL语言进行数据查询、管理与分析。 1. **SQL基础**:SQL(Structured Query ...
Oracle SQL是Oracle数据库管理系统中的标准查询语言,用于管理关系数据库系统中的数据。通过学习和掌握Oracle SQL,用户能够有效地进行数据检索、数据更新、数据定义以及数据控制等操作。 - **数据检索**:通过...
本文将总结一些Oracle基本SQL语句,帮助用户快速复习并掌握其用法。 首先,了解SQL(结构化查询语言)的基础功能是十分必要的。SQL由一系列命令组成,这些命令允许用户与数据库进行交流。其中,SELECT语句是SQL中最...
ORACLE中SQL查询语句的优化 ORACLE中SQL查询语句的优化是数据库应用设计中的一项重要技术,它直接影响着数据库的查询效率和性能。在ORACLE中,查询语句的优化需要考虑多种因素,包括索引的选择、驱动表的选择、查询...
这篇博客"我的Oracle SQL总结"可能涵盖了作者在使用Oracle SQL过程中的学习和实践经验,虽然具体细节未在描述中给出,但我们可以根据Oracle SQL的一般知识点进行深入讨论。 首先,Oracle SQL是Oracle数据库系统的...
总结,Oracle SQL性能优化是一个综合性的任务,需要从多个层面进行考虑。通过对SQL语句的优化、统计信息的维护、数据库参数的调整以及使用合适的工具,我们可以显著提升系统的运行效率。在实践中,不断学习和积累...
ORACLE SQL 优化存储过程 PROCEDURE 是一篇结合实际开发经验和理论知识的文章,旨在帮助开发者提高 SQL 开发效率和优化存储过程。文章涵盖了广泛的知识点,从基本的 SQL 语句到高级的优化技术。 基本 SQL 知识点 ...
总结来说,Oracle SQL*Loader作为Oracle数据库中用于数据导入的重要工具,掌握其使用方法和相关知识点对于数据库管理员、数据工程师等专业人士来说是非常基础且必要的。随着经验的积累,对SQL*Loader的理解将更加...
标题和描述概述的是关于SQL优化的经验总结,强调了SQL对程序处理速度的重要影响。下面将详细阐述这些关键的SQL优化技巧: ### SQL优化经验总结 #### 1. 选择最有效的表名顺序 在基于规则的优化器中,Oracle解析器...
以上总结的知识点,基于《Oracle SQL》一书的内容,结合了作者Neena Kochhar、Debby Kramer等多位Oracle专家的专业见解和技术贡献者们的审阅,旨在为Oracle SQL的学习者提供一条清晰、高效的学习路径。无论是初学者...