sql >> Databáze >  >> RDS >> Oracle

Odstraňte řádky, abyste měli v tabulce Oracle maximálně x řádků na skupinu

Za předpokladu kombinace (person_id, car_id) je v tabulce jedinečný, můžete udělat něco takového:

delete from car_assignment 
where (person_id, car_id) 
        in (select person_id, car_id
            from (
              select person_id, 
                     car_id, 
                     row_number() over (partition by person_id order by car_id) as rn
              from car_assignment
            ) t 
            where rn > 2);


  1. Jak najít všechny tabulky se sloupcem identity v databázi SQL Server - SQL Server / Výukový program T-SQL, část 45

  2. Volání funkce Java z funkce Oracle

  3. Jak vytvořit databázi s řazením UTF-8 v PostgreSQL na Windows?

  4. Špatný výkon získávání pole clob z Oracle v .Net