oracle - delete with order by on a de-normalized table -


i need perform delete operation(with oldest data first) on de-normalized table not have unique id. considering date parameter while deciding oldest data. each date 600k records.and table large delete opertaion done in batches(loop rownum) used below query 1 throwing error 'data manipulation operation not legal on view'. sure temp object type of table.

delete (select a.*,rownum rn (select * temp order date) a) b b.rn<10

please let me know alternative suggestions.

thanks kifinity solution worked confused how make work delete huge number of records.. have around 10 millions of records , need delete them in batches. in advance.

in statement, after delete from inline view. can't delete inline view; statement has delete table, e.g.

delete temp rowid in (select rowid rid                 (select * temp order date)                 rownum < 10) 

edit: requested, here's example part of pl/sql loop.

begin   loop     delete temp     rowid in (select rowid rid                     (select * temp order date)                     rownum < 1000);     if sql%rowcount = 0 exit; end if;   end loop; end; / 

Comments

Popular posts from this blog

neo4j - finding mutual friends in a cypher statement starting with three or more persons -

php - How to remove letter in front of the word laravel -

minify - Minimizing css files -