oracle如何查询重复数据然后全部显示,举例:一份Excel中有100条数据,只有10条不同,我一个个

查询的话需要替换10次,但如何全部查询出来按照位置就可以全部覆盖替换了,但是怎么查才行,有朋友提示字段拼接方式,但查不到相关方法,都是去重的,可我正相反。

在oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是oracle中的哪一个数据文件、块、行上。在重复的记录中,可能所有列的内容都相同,但rowid不会相同。使用rowid,SQL语句如下
:

select * from tbl a where rowid not in (select max(b.rowid) from tbl b where  a.col1=b.col1 and a.col2 = b.col2)

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-08

按照位置覆盖是什么意思?

 

我简单做了点数据,你看一下

create table test (id int,name varchar(10))
insert into test values (1,'张三')
insert into test values (1,'张三')
insert into test values (1,'张三')
insert into test values (2,'李四')
insert into test values (2,'李四')
insert into test values (2,'李四')
insert into test values (3,'王五')
insert into test values (3,'王五')
insert into test values (3,'王五')

就是每一个都有三条重复的,然后执行

select a.* from test a,
(select id,name,dense_rank() over (order by id) rn from test group by id,name)  b
where a.id=b.id and a.name=b.name and b.rn=1

 

 

你每次只需要替换b.rn=1后边那个1就行了

本回答被网友采纳
第2个回答  2013-10-08
用高级筛选的“选择不重复记录”就可以把100条中的10选出来了。追问

我觉得我的提问够明确了吧,你是在说反话呢

追答

抱歉,没有看清就回答了。如果用手工做个样子,来个截图就好明白了。

oracle如何查询重复数据然后全部显示,举例:一份Excel中有100条数据,只 ...
在oracle中,每一条记录都有一个rowid,rowid在整个数据库中是唯一的,rowid确定了每条记录是oracle中的哪一个数据文件、块、行上。在重复的记录中,可能所有列的内容都相同,但rowid不会相同。使用rowid,SQL语句如下:select * from tbl a where rowid not in (select max(b.rowid) from tbl b w...

如何删除excel表中的重复资料?要具体的
选中表格中的需要查询重复值的一列或区域的资料。这里选择整个表格为例,选中的效果如下图所示。 单击“开始”选项卡,然后单击“样式”组中的“条件格式”中的下三角号,在弹出选单中依次选择“突出显示单元格规则”—“重复值”。 开启“重复值”对话方块, 在“为包含以下型别的单元格设定格式”...

求如何查询数据并调取其它列数据(原始数据有重复)
根据顾客id分组,查询时间的min值,这样就能查出顾客第一次来的时间。然后根据顾客id和时间最小值(二者联合查询),就能对应出来首次接待的人了。相关的sql我能写出来(一条sql就可以,只是包含子查询),不过是oracle版本的,放在execl中未必能用,所有我只能把相关的做法写出来,具体的写法要你自己想...

如何在excel里连oracle并展示数据?
1、Excel版本要高(我这里以2016版为例);2、使用Excel的向导来配试连接;3、数据---自其他来源---来自数据连接向导---其他\/高级---Microsoft...for Oracle---连接(每一项务必认真配置正确),测试连接。(如果配置错了,测试就不通过)

以下格式如何查询“不同列中相同日期的总数量”
看上图有好几个日期(要求交、实交等等),最好明确一下是要哪几个 是要记录数(多少行),还是如“生产数量“等列的综合?1. 如果有ORACLE数据库,按EXCEL的列建表,把数据插到数据库再用SQL查询 2. 如果没有数据库,就需要用VBA写宏了 ...

oracle数据库中比较一个相同表中的两行数据中的不同列,并且把不同的...
select a from A a1 where not exists (select 1 from table where A a2 where a1.a=a2.b)unionselect b from A a1 where not exists (select 1 from table where A a2 where a1.b=a2.a)

如何用Excel直接查询Oracle中的数据
1、工具\/原料 (1)wps office 2、首先我们控制面板-管理工具-数据源,设置用户dsn-添加-输入name一下三项--ok,如图所示 (1)第一步新建excel表格-数据-其他来源-来自microsoft query (2)然后选择刚健的数据库 oracle --确定,如图 3、输入服务名用户名密码(前提是你的电脑能连接数据库,测试...

oracle能否遍历数据库里所有表的字段与值
1.dba_tab_columns有某个用户的所以表和列等信息:select table_name,column_name from dba_tab_columns where owner='SCOTT'2.查看用户的表所使用的数据类型有哪些:select distinct Data_type from (select * from dba_tab_columns where owner='SCOTT') A 通过查看,就可以知道,文本型有哪些?如...

oracle数据库中如何查询关联数据并导出指定数据?
1、对于不在同一个数据库的数据,常用的方法是采有Dblink 2、创建DbLink,即可直接查询目标库的数据,直接加上所属SCHEMAS即可 3、将查询出的结果导出

怎么实现往oracle的某一张表中的某一个字段的插入新数据覆盖旧的数据...
(1)要是你更新后的date是一样的日子,那就update A set date='xxx' where id in (子查询)(2)要是你有一个表,更新后的每一条date都不一样,要一一对应的话,我建议你在excel中拼出几百条update语句 ,然后去执行。update A set date='xxx' where id=xxxx ...

相似回答