-- Create table
create table T110JQ
(
JQNO varchar2(20) not null,
JQCHARA varchar2(20),
JQXZDM varchar2(20),
SSDW varchar2(20),
BJTYPE02. varchar2(20)
)
;
-- Create/Recreate primary, unique and foreign key constraints
alter table T110JQ
add constraint JQNO primary key (JQNO);
==============================================================================
-- Create table
create table TJQXZDM
(
JQXZCODE varchar2(20) not null,
BZJQXZDM varchar2(20)
)
;
-- Create/Recreate primary, unique and foreign key constraints
alter table TJQXZDM
add constraint JQXZCODE primary key (JQXZCODE);
==============================================================================
-- Create table
create table JL
(
DWCODE varchar2(20) not null,
BZDWCODE varchar2(20),
BZDWNAME varchar2(20)
)
;
-- Create/Recreate primary, unique and foreign key constraints
alter table JL
add constraint DWCODE primary key (DWCODE);
==============================================================================
T110JQ表数据
JQNO JQCHARA JQXZDM SSDW BJTYPE
1 1 刑事案件 1001 445821 亲临
2 2 行政案件 1002 445822 亲临
3 3 民事案件 1003 445823 亲临
4 4 行政案件 1004 445821 亲临
TJQXZDM表数据
JQXZCODE BZJQXZDM
1 5 1001
2 6 1002
3 7 1003
4 8 1004
JL表数据
DWCODE BZDWCODE BZDWNAME
1 9 445821 芙蓉区分局
2 10 445821 万家丽派出所
3 11 445821 马王堆派出所
4 12 445822 天心区分局
5 13 445823 下河街派出所
6 14 445823 开福区派出所
========================================================
不去重的语句:
select t.jqno,t.*,z.* ,f.*
from T110JQ t,TJQXZDM z ,JL f
where t.jqxzdm=z.bzjqxzdm and f.bzdwcode=t.ssdw and t.bjtype='亲临' order by t.jqno DESC
得出的结果是:
JQNO JQNO JQCHARA JQXZDM SSDW BJTYPE JQXZCODE BZJQXZDM DWCODE BZDWCODE BZDWNAME
1 4 4 行政案件 1004 445821 亲临 8 1004 9 445821 芙蓉区分局
2 4 4 行政案件 1004 445821 亲临 8 1004 11 445821 马王堆派出所
3 4 4 行政案件 1004 445821 亲临 8 1004 10 445821 万家丽派出所
4 3 3 民事案件 1003 445823 亲临 7 1003 14 445823 开福区派出所
5 3 3 民事案件 1003 445823 亲临 7 1003 13 445823 下河街派出所
6 2 2 行政案件 1002 445822 亲临 6 1002 12 445822 天心区分局
7 1 1 刑事案件 1001 445821 亲临 5 1001 10 445821 万家丽派出所
8 1 1 刑事案件 1001 445821 亲临 5 1001 11 445821 马王堆派出所
9 1 1 刑事案件 1001 445821 亲临 5 1001 9 445821 芙蓉区分局
去重处理的语句:
select t.jqno,t.*,z.*,f.* from T110JQ t,TJQXZDM z,
(select * from (select rank() over(partition by bzdwcode order by dwcode desc) r,a.* from jl a) where r=1) f
where t.jqxzdm=z.bzjqxzdm and 1=1 and t.bjtype='亲临' and t.ssdw=f.bzdwcode
结果:
1 4 4 行政案件 1004 445821 亲临 8 1004 1 9 445821 芙蓉区分局
2 1 1 刑事案件 1001 445821 亲临 5 1001 1 9 445821 芙蓉区分局
3 2 2 行政案件 1002 445822 亲临 6 1002 1 12 445822 天心区分局
4 3 3 民事案件 1003 445823 亲临 7 1003 1 14 445823 开福区派出所
总结关键是JL表的去重,只取第一条语句:
(select * from (select rank() over(partition by bzdwcode order by dwcode desc) r,a.* from jl a) where r=1) f
相关推荐
oracle字段去重 以某一个字段去重 oracle字段去重 以某一个字段去重
这是因为ORACLE只对简单的表提供高速缓冲(cache buffering) ,这个功能并不适用于多表连接查询..数据库管理员必须在init.ora中为这个区域设置合适的参数,当这个内存区域越大,就可以保留更多的语句,当然被共享的可能性...
Oracle左连接返回多条记录中一条记录的查询语句,更具指定条件分组排序,返回各组中第一条记录
oracle多表连接技巧介绍了常见的多表连接应用实例
oracle 多表查询与数据修改学习笔记,主要是让大家熟悉三个或四个表的连接查询,熟练掌握delete、update与insert的语法。
介绍SQL语句中的多表连接查询。主要讲解了表连接的形式和笛卡尔积,程序也重点讲解了表的左连接、右连接、自然连接等基本概念。
oracle本表去重复数据的执行方法与语句优化
方法一(推荐): UPDATE 表2 SET 表2.C = (SELECT B FROM 表1 WHERE 表1.A = 表2.A) WHERE EXISTS (SELECT 1 FROM 表1 WHERE 表1.A = 表2.A); 尤其注意最后的外层where条件尤为重要,是锁定其批量更新数据...
传入一个字符串和该字符串的分割字符,返回去重后的字符串,可以直接在plsql中运行,简单的函数运用,能处理oracle中。资源仅供参考
详解Oracle多种表连接方式,对内连接、外联结均有详细描述。
oracle连续重复行去重,连续重复行合并。 要将连续n条记录中,id和 dno均相同的记录合并,合并后开始时间为第一条记录开始时间,结束时间为最后一条记录结束时间。
oracle去重语句 ,批量设置,去除重复以及空格racle去重语句racle去重语句
如果你仍然对oracle的坐连接,右连接,自连接等连接的概念、意义及其用法很模糊的话,这个文档一定会让你有一个豁然开朗的感觉,当然,这里还有个关于sqlplus的文档,可以帮助你很顺利的完成操作。
Oracle测试表及数据.txt
Oracle+表连接方式(内连接-外连接-自连接) 详细介绍的连接的类型及应用实例,一份值得看的数据库资料,强列建义下载
一些ORACLE的表链接查询。求最高,最低,排序
Oracle 备份、恢复单表或多表数据步骤,适用于 Oracle 8、9、10。 *备份单表或多表数据:
C#连接Oracle数据库(查询数据)方法,好东西,分享一下
Oracle+表连接方式(内连接-外连接-自连接)+详解