RE: possible to use an exceptions table in parallel?
Date: Mon, 23 Jun 2008 16:25:55 -0400
Message-ID: <021a01c8d56f$578c7c90$1100a8c0@rsiz.com>
One more thing: Creating the relevant non-unique index (in parallel if you
like) should allow the relevant "group by having" query to run very quickly,
and since you're interested in listing out the exceptions you might want to
stuff min(rowid) and my_col values having count > 1 into a table from which
to drive the row copies(optional) and deletes before creating the unique
index. True, it will cost you to create the non-unique version of the index,
but since you'll probably be running across it multiple times to check for,
possibly copy, and delete duplicates it should be a net win. Using
min(rowid) is one choice for what to keep, if you have other unique keys
different from my_col already enforced on the table with an index a min or
max on that column might also be a good choice, and of course someone might
demand an arbitrary obtuse choice system for which row to retain.
Regards,
mwf
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org]
On Behalf Of Jared Still
Sent: Monday, June 23, 2008 2:31 PM
To: ricks12345_at_gmail.com
Cc: oracle-l_at_freelists.org
Subject: Re: possible to use an exceptions table in parallel?
Should you wish to try this method, the parallel hint syntax was incorrect.
It should be /*+ parallel (my_tab,4) */
<snip>
Theoretically you can add a parallel hint to the query to run it in parallel
select /*+ parallel my_tab(4) */ my_col
from my_tab
group by my_col
having_count > 1;
<snip>
-- http://www.freelists.org/webpage/oracle-lReceived on Mon Jun 23 2008 - 15:25:55 CDT