Microsoft
Software
Hardware
Network
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
Failed to allocate port error when configuring EM (Oracle 11g)
How do I access RDWEB on SBS 2008 Domain?
Accessing GPT drive on windows 7 from Windows XP
Look Up in Query
How to redirect My Documents Folder on an unattended install
Outlook calendar issue. Some users who i did not share the calendar in local or exchange. Are able to see my calendar.
error with external dll
Ask a New Question Window Does Not Come Up On Particular Computer
Oracle 10g database / database control
SBS 2003 Exchange 2003 IMAP