PL\SQL如何删掉重复的数据保留只保留一条数据

如何删除表中重复的数据,但要保留一条数据... 如何删除表中重复的数据,但要保留一条数据 展开
 我来答
jsczwangx
2014-04-13 · TA获得超过1222个赞
知道小有建树答主
回答量:777
采纳率:100%
帮助的人:628万
展开全部
方法有很多了,每行都有唯一的rowid,利用这个可以比较方便的达到目的,有问题再追问吧
delete from table a where rowid !=(select max(rowid) from table1 b where a.phid=b.phid and a.xzqbm=b.xzqbm and a.zdtybm=b.zdtybm...)
更多追问追答
追问
你好,谢谢你的回答,再麻烦你看一下我这样子写对吗?可是我执行起来,它一直是执行状态,
delete from TDDJNW.ZBXXB_52 a where rowid !=(select max(rowid) from TDDJNW.ZBXXB_52 b where a.phid=b.phid)
追答
a.phid=b.phid的条件后面再加上and a.xzqbm=b.xzqbm and a.zdtybm=b.zdtybm,因为phid相同的很多,这样多对多的关联会很慢
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式