Mysql oracle刪除重復記錄的sql MYSQL Java代碼 drop TABLE if EXISTS tmp_t; create TABLE tmp_t select min(id) id,`name` from comp_info group by `name` having count(`name`)>1 ; delete a.* from comp_info a,tmp_t b where b.`name`=a.`name` and a.id>b.id; truncate table tmp_t; drop TABLE if EXISTS tmp_t; Oracle Java代碼 delete from gqh_sch_info where sch_name in (select sch_name from gqh_sch_info group by sch_name having count(sch_name) > 1) and rowid not in (select min(rowid) from gqh_sch_info group by sch_name having count(sch_name)>1)