Я пытаюсь сделать запрос на удаление записи в таблице 1 на основе дубликатов записей, найденных в таблице 2. id является общей связью между этими двумя таблицами. База данных является оракулом. Я новичок в написании запросов, и ниже приведен запрос, который я придумал, который не работает. Кто-нибудь может предложить, пожалуйста?
Я на самом деле пытаюсь удалить запись на основе идентификатора в таблице 1 при условии, что в таблице 2 есть дубликаты записей для этого идентификатора, а также еще один столбец? Ниже приведено сообщение об ошибке, которое я получаю. Я действительно не уверен, является ли запрос точным или вам нужно переписать весь запрос?
«неверный оператор SQL» - ORA-00900
DELETE TABLE AS m WHERE m.id IN
(SELECT id from table2 t WHERE ROWID >
(SELECT MIN(ROWID) FROM table2 r WHERE t.column2 = r.column2);