Question : Need to turn a SQL select into a delete statement

I have the following SQL statement that I need to turn into a delete

SELECT update_id,DTTM_IMPORTED  FROM PS_MAINTENANCE_LOG  
GROUP BY update_id,DTTM_IMPORTED
HAVING Count(*) >  1


--- This was submitted but it did not leave one of the duplicate rows, it deleted all rows where the count(*) was greater than one.
delete  from ps_maintenance_log
where (update_id,DTTM_IMPORTED) in
(
SELECT update_id,DTTM_IMPORTED  FROM PS_MAINTENANCE_LOG  
GROUP BY update_id,DTTM_IMPORTED
HAVING Count(*) >  1
)

Thanks in advance.

Answer : Need to turn a SQL select into a delete statement

can you try the below :

delete  from ps_maintenance_log x
where exists ( select 1 from ps_maintenance_log y
where x.update_id = y.update_id
and x.DTTM_IMPORTED = y.DTTM_IMPORTED
and x.rowid < y.rowid );

Thanks
Random Solutions  
 
programming4us programming4us