The following code shows how to use alternative DELETE Command: a Subquery in the WHERE Clause.
SQL> SQL> create table departments( 2 deptno NUMBER(2) primary key, 3 dname VARCHAR2(10) not null unique check (dname = upper(dname)), 4 location VARCHAR2(8) not null check (location = upper(location)), 5 mgr NUMBER(4)) ; Table created.-- www. j av a 2 s .c om SQL> SQL> insert into departments values (10,'ACCOUNTING','NEW YORK',7007); SQL> insert into departments values (20,'TRAINING', 'DALLAS', 7004); SQL> insert into departments values (30,'SALES', 'CHICAGO', 7006); SQL> insert into departments values (40,'HR', 'BOSTON', 7009); SQL> SQL> SQL> DELETE FROM departments 2 WHERE dname = (SELECT dname 3 FROM departments 4 WHERE location = 'DALLAS'); 1 row deleted. SQL> SQL> select * from departments; DEPTNO DNAME LOCATION MGR ---------- ---------- -------- ---------- 10 ACCOUNTING NEW YORK 7007 30 SALES CHICAGO 7006 40 HR BOSTON 7009 SQL>