Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Speedup the dml ??
First of all, your update statement would also update the rows of a which do not have a pendant in b. c5 would become null there. If this is intention - fine. If not you must add something like
...
where (a.c1, a.c2, a.c3, a.c4) in (
select b.c1, b.c2, b.c3, b.c4 from b
to your update statement.
I checked three things at my NT 4.0, SP 6a, Pentium III 650 MHz, 128 MB:
SQL> update --+ all_rows
2 testa a
3 set c5 = ( select c5 4 from testb b 5 where a.c1=b.c1 6 and a.c2=b.c2 7 and a.c3=b.c3 8 and a.c4=b.c4
11 select b.c1, b.c2, b.c3, b.c4 12 from testb b
60000 rows updated.
Martin
feib wrote:
>
> Hello, there
> I have two tables a,b ( a with 600000 records, b 60000 records)
> Both a and b have the same columns c1 c2 c3 c4 c5.
> I want to update a's c5 by b's c5 for the same key value c1-c4.
> So,I create two unique indexies on a(c1,c2,c3,c4) and b(c1,c2,c3,c4).
>
>
> Are there any better statement ( like EXISTS,or any hint to speedup) ??
> Any ideas ??
>
> Rgds,
> Agi Chen
>
>
>
Received on Sat Apr 15 2000 - 00:00:00 CDT