- 浏览: 1993681 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (509)
- JavaEE (122)
- Oracle数据库 (29)
- JavaScript (37)
- SAP (5)
- MySql数据库 (7)
- JavaSE (4)
- Ajax (1)
- jQuery (13)
- SSH框架 (36)
- Web Service (10)
- JSF框架 (2)
- JBPM (0)
- ireport报表 (2)
- ibatis (5)
- Hibernate (31)
- JSP (11)
- Tomcat 服务器 (20)
- Other (19)
- JavaWeb (4)
- Maven (11)
- OSWorkFlow (10)
- HTML (13)
- Exception汇总 (7)
- SVN (2)
- 笑话 (1)
- JSTL (1)
- WebSphere Message Broker (13)
- ANT命令 (3)
- Liunx (12)
- Struts2 (26)
- Eclipse (6)
- DOS (3)
- Flex (11)
- WebSphere (1)
- 开发常用工具 (3)
- Junit (2)
- EJB (4)
- Struts1.2 (2)
- Jboss (1)
- Android (2)
- Java框架源码解析 (1)
- Spring (4)
- MyBatis (6)
- SpringMVC (4)
- Jetty (2)
- 数据库表设计 (1)
- SSO (4)
最新评论
-
贝塔ZQ:
也可以试试PageOffice插件,觉得更简单点
Jxl操作Excel设置背景、字体颜色、对齐方式、列的宽度 -
jia1208:
...
Could not publish server configuration for Tomcat v6.0 Server at localhost. -
u011274527:
赞
java.io.EOFException java.io.ObjectInputStream$PeekInputStream.readFully 错误 -
旭旭小牛啦:
怎么没哟了,继续赛
jQuery 选择器 -
wzw3919:
100行会报空指针
Java 解压缩zip文件
--建立和删除表; drop table student; create table student(id number(30),name varchar2(50),sex varchar2(100)) --建立约束; 为了能插入重复记录,此表没有建立月主键约束 或 唯一键约束; --alter table student add constraints pk_student primary key(id); --插入数据; insert into student values(1,'A','BOY'); insert into student values(1,'A','BOY'); insert into student values(2,'B','Girl'); insert into student values(3,'C','Girl'); insert into student values(4,'D','Girl'); commit; --查询所有student表数据; select rowid,id,name,sex from student; --查询重复记录;(方法一) select id,name,sex from student where id in (select id from student group by id having count(*) > 1); --row_number()分析函数;(方法二) select * from student where id in (select id from (select id ,row_number() over(partition by id order by rowid) m from student) where m <> 1); --使用rowid (方法三); select * from student a where a.rowid > (select min(b.rowid) from student b where b.id = a.id);
--分页查询;(方法一)
select * from(select a.*,row_number() over(order by id desc) rk from student a ) where rk<=3 and rk>=1;
--分页查询;(方法二)
select * from (select student.*,rownum rn from student where rownum <=3 order by id) where rn>=1;
--case when then ,查询报表; select emp.empno,emp.ename,emp.job,emp.deptno,emp.sal, case deptno when 10 then'部门-10' when 20 then '部门-20' when 30 then '部门-30' else '其他部门' end from emp; --交叉报表查询; select ename,sal, case deptno when 10 then '会计部' when 20 then '研究部' when 30 then '销售部' else '其他部门' end 部门 from scott.emp ; --交叉报表查询; select empno,ename,sal,job,case when sal>=0 and sal<=1000 then '一级工资' when sal>=1001 and sal <= 2000 then '二级工资' when sal>=2001 and sal <=3000 then '三级工资' when sal>=3001 and sal <= 4000 then '四级工资' when sal>= 4001 and sal <= 5000 then '五级工资' else '其他工资' end 工资等级 from emp;
--利用sum 和 case..when. then .end.行转列的使用。 select ename as 员工姓名,sum(case JOB when 'CLERK' then sal end )接待员, sum(case JOB when 'SALESMAN' then sal end) 推销员, sum(case JOB when 'MANAGER' then sal end)管理员, sum(case JOB when 'ANALYST' then sal end)分析家, sum(case JOB when 'PRESIDENT' then sal end)董事长 from emp group by ename order by ename;
--利用sum 聚合函数与 decode 函数做一个简单查询, decode(输入值,'要判断的值',匹配后的结果,如果没匹配成功,则输出默认值) ; select ename 员工姓名,sum(decode(JOB,'CLERK',SAL,0)) 接待员, sum(decode(JOB,'SALESMAN',SAL,0)) 推销员, sum(decode(JOB,'MANAGER',SAL,0)) 管理员, sum(decode(JOB,'ANALYST',SAL,0))分析家, sum(decode(JOB,'PRESIDENT',SAL,0))董事长 from emp group by ename order by ename;
--自连接查询; select a.empno,a.mgr,a.ename,a.sal,b.empno,b.ename,b.sal from scott.emp a,scott.emp b where a.mgr=b.empno ; --做外连接; select a.ename,a.sal,b.ename from scott.emp a,scott.emp b where a.mgr=b.empno(+); --自连接查询; select a.empno,a.ename,a.sal,b.empno,b.ename,b.sal from emp a left join emp b on(a.mgr = b.empno) order by a.empno; select * from emp order by empno; select emp.*,(select deptno from dept where LOC = 'NEW YORK')新增的列 from emp; --select sal from emp where emp.deptno = 30 这条语句查询出的结果,1600,1250,1250,2850,1500,950。 --然后,员工的工资 必须大于 子查询查询出来的数据。 select emp.* from emp where emp.sal > all(select sal from emp where emp.deptno = 30); --结果如下: 1 7566 JONES MANAGER 7839 1981-4-2 2975.00 20 2 7788 SCOTT ANALYST 7566 1987-3-19 3000.00 20 3 7839 KING PRESIDENT 1981-11-17 5000.00 10 4 7902 FORD ANALYST 7566 1981-12-3 3000.00 20
--员工工资,必须大于子查询里面,任何一个值,就可以。这就是any的用法; select emp.* from emp where emp.sal > any(select sal from emp e where e.deptno = 30);
--使用union,去除重复行,且排序。 select emp.empno,emp.ename,emp.sal from emp where emp.sal >= 1500 union select emp.empno,emp.ename,emp.sal from emp where emp.sal <=3000; --使用union all直接两个结果集合并,不排序. select ename,sal,deptno from scott.emp where deptno>10 union all select ename,sal,deptno from scott.emp where deptno<30 ;
发表评论
-
大型互联网服务集成平台:springmvc+mybatis+restful+webservice+quartz+bootstrap html5
2015-04-13 21:49 81SpringMVC + Mybatis + SpringSe ... -
大型互联网服务集成平台:springmvc+mybatis+restfull+JMS+webservice+bootstrap
2015-04-12 23:33 83SpringMVC + Mybatis + SpringS ... -
Maven构建大型互联网架构springmvc+mybatis+Restfull+Webservice+Bootstrap
2015-04-12 23:28 71SpringMVC + Mybatis + SpringS ... -
maven构建高大上开源架构:springmvc+mybatis+rest+bootstrap html5
2015-04-12 23:25 23SpringMVC + Mybatis + SpringS ... -
手机App后台架构:Springmvc+SpringSecurity+mybatis+Rest+Quartz+Bootstrap Html5( Maven构建)
2015-04-09 01:39 76APP后台架构Maven构建,模拟大型互联网架构,支持高并发 ... -
Oracle按指定日期生成连续的时间范围
2014-11-01 21:39 3060比如现在有个表 记录着某个 sid 的开始 结束时间 大概有 ... -
Oracle 中的递归语句Select...Start With...Connect by prior...的使用
2013-11-25 22:55 2474在做项目中,我们经常会遇到树形数据,在oracle树查询的最 ... -
使用DOS命令启动本地Oracle数据库服务
2013-11-24 18:25 1427新建一个bat文件,在bat文件中配置如下命令,然后双击文件 ... -
Oracle去除重复的记录和删除重复的记录
2012-07-18 23:51 1857oracle查询重复数据与删除重复记录方法 . 分类: ora ... -
oracle常用的数据库脚本
2012-07-12 00:53 0在学习oracle数据库时,记录的一些笔记,希望能对大家学习o ... -
oracle 分页查询
2012-05-23 22:14 1074oracle分页查询方式一: select * from ( ... -
计算距离'2011-05-01'到2012-05-14的年月日
2012-05-14 23:56 1104计算距离'2011-05-01'到2012-05-14的 ... -
Oracle数据库中使用sql语句取随机数
2012-03-14 11:17 3036具体SQL语句如下,dbms_random.value(100 ... -
Oracle 的sql语句多条件判断
2011-12-09 15:39 8810oracle在sql语句查询的时候,经常一个字段的不同的值代表 ... -
Oracle存储过程-删除所有表
2011-12-06 09:54 3045删除所有user_tables中的表 ,这样非常不安全, ... -
Oracle存储过程-删除所有的表
2012-04-13 08:00 1132删除所有表的存储过程. --删除所有表的存储过程; ... -
Oracle存储过程-删除所有序列
2011-11-21 16:11 3161在跑数据库脚本之前, 往往会重新删除数据库中所有的序列. ... -
Oracle设置编码集的问题
2011-10-28 11:31 1507--停止数据库服务.停止监听器.. shutdown ... -
查看Oracle最大连接数
2011-08-26 15:10 1698查看oracle最大的连接数: SQL> sel ... -
PL/SQL导入数据(cvs和excel)
2011-08-17 19:23 2572PL/SQL导入数据(cvs和excel) PL/SQ ...
相关推荐
使用Oracle查询并删除重复记录的SQL语句 在实际应用中,删除重复记录是非常常见的操作,特别是在数据导入、数据整合和数据清洁等场景中。Oracle数据库提供了多种方式来查询和删除重复记录,本文将详细介绍这些方法...
### Oracle查询重复数据与删除重复记录方法 在Oracle数据库中,有时我们需要找出并处理重复的数据。这不仅可以提高数据质量,还能提升查询效率。本文将详细介绍几种常用的查询和删除Oracle数据库中重复记录的方法。...
在 Oracle 中,我们可以使用 GROUP BY 语句来查找重复记录。假设我们要根据 FIELD_CODE 字段来判断重复记录,可以使用以下语句: ```sql select * from R_RESOURCE_DETAILS where FIELD_CODE in(select FIELD_CODE ...
本文将详细探讨如何在Oracle中查询和删除重复记录,主要聚焦于单个字段和多个字段的情况。 1. **单个字段重复记录查询** 当我们需要根据单个字段(如`peopleId`)查找重复记录时,可以使用以下SQL语句: ```sql ...
至于提供的`重复记录.sql`文件,它可能包含了一个示例查询,用于演示如何在实际环境中找出重复记录。具体的内容和使用方式,需要打开文件查看其SQL脚本。不过,根据描述,这个文件没有给出更多的上下文,因此无法在...
### Oracle删除重复记录性能分析 #### 一、背景与需求 在数据库管理中,经常会遇到数据...综上所述,在选择删除重复记录的方法时,需要根据实际应用场景、数据量大小以及性能需求等因素综合考虑,选择最适合的方案。
要删除Oracle数据库表中的重复记录,有几种方法可以采用: ##### 方法一:使用子查询与DELETE语句 这种方法适用于只需要删除重复记录中的某些行的情况。步骤如下: 1. **找出重复的记录**:首先,我们需要找到...
在Oracle数据库管理中,处理数据冗余是一项非常重要的工作,特别是在大数据量的环境中,重复记录不仅浪费存储空间,还可能导致数据分析结果出现偏差。本文将详细介绍如何在Oracle数据库中有效地删除表内的重复记录。...
DISTINCT关键字可以用来去除查询结果中的重复记录。 #### 创建无重复的新表 ```sql CREATE TABLE table_new AS SELECT DISTINCT * FROM table1 minux TRUNCATE TABLE table1; INSERT INTO table1 SELECT * FROM ...
本文介绍了两种在Oracle数据库中去除重复数据的方法:一是通过子查询实现,二是利用窗口函数`ROW_NUMBER()`。这两种方法各有优劣: - **子查询方法**适用于大多数Oracle版本,但可能不够直观,尤其是在处理复杂数据...
根据给定的文件标题、描述和部分内容,我们可以深入探讨Oracle数据库中删除重复记录的方法,这对于维护数据完整性和提高系统性能至关重要。以下将详细介绍几种在Oracle数据库中有效删除重复记录的技术。 ### 1. ...
这个"Oracle SQL应用作业与答案"资源可能是一个教学材料或自我学习工具,旨在帮助用户深入理解和掌握Oracle SQL的各种功能和操作。以下是对这个主题的详细解释: 1. **SQL基础**:SQL是Structured Query Language的...
### PL/SQL删除Oracle数据库中的重复记录方法详解 在日常的数据库管理与维护工作中,我们经常会遇到需要处理数据表中的重复记录的情况。特别是在大型企业级应用中,由于各种原因(如数据导入错误、系统故障等),...
`DISTINCT`关键字用于去除查询结果中的重复记录,例如: ```sql SELECT DISTINCT department_id FROM employees; ``` 这条语句将返回`employees`表中所有不同的`department_id`值。 #### 3. 列的运算与空值处理 当...
### SQL教程:Oracle SQL Server与MySQL对比学习 #### 一、引言 SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库的标准语言。无论是初学者还是经验丰富的数据专家,在面对庞大的数据...
以上方法提供了在SQL中处理重复记录的基本思路,实际应用时需根据具体数据库系统(如MySQL、Oracle、SQL Server等)的语法进行适当调整。在处理大量数据时,应谨慎操作,确保数据安全,并考虑使用事务来保证操作的...
Oracle数据库是世界上最广泛使用的数据库系统之一,特别是在企业级应用中。在处理大量数据时,查询是数据库操作的核心。本主题将深入探讨如何在Oracle中查询列值相同但其他信息不同的记录,这对于数据分析师和数据库...
在Oracle数据库系统中,高级SQL技能是进行高效数据管理、查询优化和复杂数据处理的基础。 1. 集合操作包括UNION、UNION ALL、INTERSECT和MINUS等,它们用于合并两个或多个SELECT语句的结果集。UNION和UNION ALL用于...
Oracle SQL是数据库管理领域中最广泛使用的查询语言之一,尤其在Oracle数据库系统中扮演着核心角色。本教程基于ORACLE的官方SQL教材,旨在提供全面且深入的SQL学习资源,帮助初学者和进阶用户掌握这一强大的数据操作...
在实际应用中,Oracle SQL和PL/SQL通常结合使用,SQL负责数据的CRUD操作,而PL/SQL则负责更复杂的业务逻辑和流程控制。对于数据库管理员和开发者来说,掌握这两门语言是高效管理和开发Oracle数据库的关键。 文件...