根据多个字段属性去重,100分送上!

小孔大胖 2017-10-10 05:21:42
新手小白入职不到1个月,话不多说上代码


根据sitecode1 sitecode2 和 distance(在后面没截到) 的唯一性去重

在线等,挺急的.
...全文
542 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
alex259 2017-10-11
  • 打赏
  • 举报
回复
你就用把你这个结果集放在一个临时表中,然后再用1L的方法对这个表重构得到新的结果集,返回出来不就行了,你的存储过程都不需要怎么改。
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
存储过程的逻辑,已经全部代码都要写下。
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
引用 8 楼 qq_40109328 的回复:
重申一下,是要写在存储过程里!!!!!

没有描述清楚啊,之前没说要写存储过程。
写存储过程需要用到游标,需要把表的字段或者要查询的字段全部都列出来。
小孔大胖 2017-10-10
  • 打赏
  • 举报
回复
方便加一下qq吗..
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
table_name记得换成你实际的表名。
小孔大胖 2017-10-10
  • 打赏
  • 举报
回复
重申一下,是要写在存储过程里!!!!!
小孔大胖 2017-10-10
  • 打赏
  • 举报
回复
我显示的报错呀....
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
麻烦此楼结贴,哈哈!
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
意思是按那3个字段分组,相同的记录,取一条。 就是你要求的去重。
小孔大胖 2017-10-10
  • 打赏
  • 举报
回复
换好了..请问能解释一下你这段sql啥意思么,,,我一点看不懂诶..
小孔大胖 2017-10-10
  • 打赏
  • 举报
回复
好的,我现在试试..
碧水幽幽泉 2017-10-10
  • 打赏
  • 举报
回复
试试这个SQL:

select *
from (select t.*,row_number()over(partition by t.sitecode1 ,t.sitecode2,t.distance order by 1) rn
from table_name t
)
where rn = 1;

17,082

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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