sql >> Database teknologi >  >> RDS >> Oracle

Oracle:Slet dubletter i en gruppe fra tabel med join

Brug Oracles KEEP LAST for at finde det bedste rc_document_id efter document_id . Slet derefter alle andre.

delete from rc_document
where rc_document_id not in
(
  select max(d.rc_document_id) keep (dense_rank last order by dg.priority)
  from rc_document d
  join rc_document_group dg using (rc_document_group_id)
  group by d.document_id
);

Rextester demo:http://rextester.com/NZVZGF52818



  1. Forskel mellem DataSource og ConnectionPoolDataSource

  2. Opret dynamisk tabel fra funktion i PostgreSQL

  3. Hvordan får man et float-resultat ved at dividere to heltalsværdier ved hjælp af T-SQL?

  4. Eksporter forespørgselsresultater til en XML-fil, når du bruger SQLcl (Oracle)