oracle数据库中比较一个相同表中的两行数据中的不同列,并且把不同的列显示出来

oracle数据库中比较一个相同表中的两行数据中的不同列,并且把不同的列显示出来,第1张

select a from  A a1 where not exists (select 1 from table where A a2 where a1.a=a2.b)

union

select b from  A a1 where not exists (select 1 from table where A a2 where a1.b=a2.a)

需要所有列的值都拿来纵向判断。一个简单的方法是:

select

count(

distinct

t.列1

[,t.列2,t.列3……]

)

as

cnt

from

t

[where条件(指定哪几行数据进行判断)

]

如果结果值为1,则表示这几行数据重复了。

其实就是distinct用来去掉重复的记录,当所有列都distinct过滤之后,最终结果就只有一行数据了。

1、首先创建一个百位表,并在该表中插入重复的记录,如下图所示

2.在插入之后,我们可以看到表中有重复的度数数据,如下图所示。

3.接下来,我们必须记住在删除之前要备份,如下图所示。

4.可以使用不同的字段设置排除重复的记录,如下图所示,然后将重复数据插入新表中。

5.然后,您将在数据表下看到一个新构建的表,如下图所示。

6.最后,打开新表,可以看到没有重复的数据,如下图所示。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9435938.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存