这个怎么得到其中一条不重复的,以dregno其中一条

simon505 2017-01-14 11:40:36
DMED_NO DREGNO DTIMES DTELL DMED_REC
00190772 1612300463 1 左手扭伤,疼痛、肿胀半小时。 空
00190772 1612300463 2 左手扭伤,疼痛、肿胀半小时。 空
00036192 1612310107 1 顺产后9天,宫内组织物残留,复诊 外院顺产后9天,组织物残留
00036192 1612310107 2 顺产后9天 顺产后至今阴道流血不多,
...全文
258 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgycsmb 2017-02-05
  • 打赏
  • 举报
回复
select distinct deptno from emp; 或 select deptno from emp group by deptno;
sych888 2017-01-16
  • 打赏
  • 举报
回复
row_number() over(partition .......
simon505 2017-01-14
  • 打赏
  • 举报
回复
或者取dtimes最大的一条 如果只有一条,的记录也可要考虑
卖水果的net 2017-01-14
  • 打赏
  • 举报
回复

SQL>
SQL> create table test(
2 DMED_NO varchar(10),
3 DREGNO varchar(10),
4 DTIMES varchar(10),
5 DTELL varchar(10),
6 DMED_REC varchar(10)
7 );
Table created
SQL> begin
2 insert into test values('00190772', '1612300463', 1, '左手扭X', '空');
3 insert into test values('00190772', '1612300463', 2, '左手。', '空');
4 insert into test values('00036192', '1612310107', 1, '后9天', '外');
5 insert into test values('00036192', '1612310107', 2, '9天', ' f,');
6 end;
7 /
PL/SQL procedure successfully completed
SQL> with m as (
2 select t.*,
3 row_number() over(partition by dregno order by dtimes desc) rn
4 from test t
5 )
6 select * from m where rn =1 ;
DMED_NO DREGNO DTIMES DTELL DMED_REC RN
---------- ---------- ---------- ---------- ---------- ----------
00036192 1612310107 2 9天 f, 1
00190772 1612300463 2 左手。 空 1
SQL> drop table test purge;
Table dropped

SQL>

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧