一个记录oracle重复数据的问题

来源:百度知道 编辑:UC知道 时间:2024/06/15 12:31:28
我有一张表A(a1,a2,a3)
我现在要将 a1+a2 的重复的数据记录在a3,比如说有2条重复就记 2,有5条重复就记 5 ,如果只有一条的话就记 1.以此类推.请问我应该怎么做
我所说的a1+a2 并不是两个数相加,而是同时满足这两个与另一个a1和a2相等 比如说 a1=100 a2 = abc 如果没有重复的了,那么 a3为 1 如果还有一个跟a1,a2一样的 a3就为2以此类推.

update A b1 set b1.a3 =(select count(*) from A b2 where b2.a1=b1.a1 and b2.a2=b1.a2)

select a3,count(*) from (select a1+a2 as a3 from table) group by a3

select count(*)-count(distinct (a1+b2) ) from A
这个是得到重复数据的条数。不知道你是想把A3的列全部更新为这个数字还是怎么着。没怎么理解你的问题。说清楚点。如果是全部的话
update a set a3=(select count(*)-count(distinct (a1+b2) ) from A)