create temp table msl09(c1 text, c2 text); insert into msl09 values ('123', '321'); insert into msl09 values ('abcd', '321'); insert into msl09 values ('abcdw', '321'); insert into msl09 values('234', '4a66'); insert into msl09 values('234', '466'); create or replace function test() returns integer as $$ delete from msl09 where c2 = (select c2 from msl09 where c1 = '123'); delete from msl09 where c1 = (select c2 from msl09); select 1; $$ language sql; select test(); select * from msl09;