求一个oracle 去重复记录完整sql语句或者用 hibnate+ distinct 的完整例子
发布网友
发布时间:2022-04-11 15:40
我来回答
共3个回答
热心网友
时间:2022-04-11 17:09
delete from dept where dname in(
select dname from dept group by dname, loc having count(*) > 1 //按照dname,loc分组后,查找出这两个值的个数大于1的dname
) and rowid not in(
select min(rowid) from dept group by dname, loc having count(dname) >1 //按照dname,loc分组后,查找出这两个值的重复行中rowid最小的那一行的dname
)
热心网友
时间:2022-04-11 18:27
delete from table_1 a where rowid <>
(select max(rowid) from table_1 b where b.字段名1=a.字段名1 and b.字段名2=a.字段名2)
--还有什么疑问请及时提出
希望回答能够帮助到你追问....这不是把数据删了,数据不能删... 我查询的时候怎么写... 能写个查询的吗
追答select * from table_1 a where rowid
(select max(rowid) from table_1 b where b.字段名1=a.字段名1 and b.字段名2=a.字段名2),就是查询了,变换一下的事。
热心网友
时间:2022-04-11 20:02
select dname from dept a where rowid=(select max(rowid) from dept b where b.column=a.column)追问OK ,我也找到这个了 谢谢啊