DELETE FROM custinfo,custinfotemp
WHERE
custinfo.UserID=custinfotemp.userid
and
custinfotemp.updateStatus='D'
;
should avoid the 2.10^6 selects
Dorward Villaruz a écrit:
> can anybody help me with this one
>
> i want to delete rows from one table based values from another table.
>
> here is the scenario
>
> i have a table named custinfo which contain 2000000 records and a table
> custinfotemp which contain 30000 records. i want to delete all records
> in custinfo where the cust_id is found on custinfotemp where it's update
> status is 'D'
>
> here is my sql statement
>
> psql -h $HOSTNAME -d $DBNAME -c "DELETE FROM custinfo WHERE
> custinfo.UserID IN (SELECT custinfotemp.userid FROM custinfotemp where
> updateStatus='D')";
>
> is it possible that this query statement takes 24 hours and still
> running to execute?
>
> is there a way to achieve the same result faster?
>
> thanks.