Delete duplicate record rows in Oracle

Source: Internet
Author: User

It is mainly used to record the rowid uniqueness of rows in Oracle.

Remove duplicate records (pay attention to multiple executions until the impact record is 0 rows)

  1. Delete from WBH_TEMP2 where terminal_id in (
  2. Select terminal_id from WBH_TEMP2 group by terminal_id having count (*)>1)
  3. And rowid in (select max (rowid) from WBH_TEMP2 group by terminal_id having count (*)>1)

It is equivalent to the preceding statement. This statement can be executed once to remove duplicate records.

  1. Delete from WBH_TEMP2 where terminal_id in (
  2. Select terminal_id from WBH_TEMP2 group by terminal_id having count (*)>1)
  3. And rowid not in (select min (rowid) from WBH_TEMP2 group by terminal_id having count (*)>1)

We recommend that you use CTAS when there is a large amount of data.

Create table WBH_TEMP3 as select terminal_id from WBH_TEMP2 group by terminal_id

In this way, duplicate records are removed from WBH_TEMP3.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.