Re: Row ID

From: Jonathan Lewis <jonathan_at_jlcomp.demon.co.uk>
Date: 1999/09/07
Message-ID: <936703979.16788.0.nnrp-10.9e984b29_at_news.demon.co.uk>#1/1


You might want to look at my website for an article on handling very large batch updates (e.g. Y2K patches to stick 19 in front of YYMMDD text) by using rowid ranges.

The stuff I posted was for Oracle 7 only, but it is even simpler in Oracle 8.

The basic thing is:

    select (or update or delete)

            /*+ ROWID (alias) */
    .....
    where

        rowid between rowid_low and rowid_high;

--

Jonathan Lewis
Yet another Oracle-related web site:  http://www.jlcomp.demon.co.uk

Bob Fazio wrote in message ...

>On somewhat of the same note. Is it possible to split up a query by ROWID.
>I know that parallel query does something along these lines. For example:
>
>select * from mytab where rowid between min(ROWID) and max(ROWID)/4;
>select * from mytab where rowid between min(ROWID)/4 and max(ROWID)/2;
>select * from mytab where rowid between min(ROWID)/2 and max(ROWID)*3/4;
>select * from mytab where rowid between min(ROWID)*3/4 and max(ROWID);
>
>I know there is a problem with not taking into consideration that
>max(rowid)/4 could be less than the min(rowid),
>I was just trying to make my point.
Received on Tue Sep 07 1999 - 00:00:00 CEST

Original text of this message