ORA-01732: операция с данными не разрешена в этом представлении - PullRequest
1 голос
/ 12 марта 2012

У меня есть это заявление DML ..

delete from  (select  key,value,computed, row_number()  OVER (Partition By key, value order by seq asc)  as a
from excelformats  a )
where A > 1

и это бросает

ORA-01732: data manipulation operation not legal on this view

Этот оператор в основном выбирает повторяющиеся строки из таблицы excelFormats, которые нужно удалить Как я могу пересмотреть, чтобы

1 Ответ

3 голосов
/ 12 марта 2012

Вы можете использовать:

DELETE FROM excelformats
 WHERE rowid not in 
            (SELECT MIN(rowid) 
               FROM excelformats
              GROUP BY key, value, computed); 

Это удалит дубликаты строк в вашей таблице excelformats с учетом трех ключевых столбцов, которые вы указали.

Надеюсь, это поможет ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...