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

Dynamisk sletning i Oracle

  delete departments

  where  department_id in
         (
            select department_id

            from  (    select  department_id, department_name, manager_id,location_id 
                       from    departments

                       minus

                       (          select 66,'Administration',200,1700 from dual
                       union all  select 77,'Marketing'     ,201,1800 from dual
                       )
                   )
         )

eller

  delete departments

  where  (department_id, department_name, manager_id,location_id) not in
         (          select 66,'Administration',200,1700 from dual
         union all  select 77,'Marketing'     ,201,1800 from dual
         )

Men sørg for at du ikke har select null,null,null,null from dual blandt dine UNION vil ALLE optegnelser eller intet blive slettet



  1. Hvordan fortolker man output fra MySQL EXPLAIN?

  2. Venstre join eller vælg fra flere tabeller ved hjælp af komma (,)

  3. indsæt tidsstempelværdier i trin på 3 minutter

  4. Korrekt MySQL-konfiguration for Ruby on Rails Database.yml-fil