Saya rasa wajar, karena: 1. Kemungkinan access methodnya menggunakan FULL TABLE scan. karena: mt.c between to_date(P_FROM_DATE, 'yyyy-mm-dd') and to_date(P_TO_DATE, 'yyyy-mm-dd') and mt.b between 1100 and 1199
Tanya: boleh tahu ? P_FROM_DATE & P_TO_DATE nama column atau ??? 2. Operasi sort dari data yang cukup besar, group by trunc(mt.c), mt.b, ss.c order by trunc(mt.c) asc, mt.b asc, ss.c asc GROUP BY sendiri akan/sudah men-sort data yg ada sesuai dengan column list yg ada (trunc(mt.c), mt.b, ss.c), Jadi TIDAK PERLU menggunakan ORDER BY lagi ... ---> operasi sort-nya DOUBLE ... DOUBLE PUNCH Boo !!! (jadi luaaammmbbbaaat!!! hehehe :-) ) Coba di check execution plannya, dgn cara berikut SQL>@?/rdbms/admin/utlxplan.sql SQL> EXPLAIN PLAN FOR select trunc(mt.c), mt.b, ss.c, count(*) total from mt, ss where mt.a = ss.a and mt.c between to_date(P_FROM_DATE, 'yyyy-mm-dd') and to_date(P_TO_DATE, 'yyyy-mm-dd') and mt.b between 1100 and 1199 group by trunc(mt.c), mt.b, ss.c order by trunc(mt.c) asc, mt.b asc, ss.c asc SQL>@?/rdbms/admin/utlxpls.sql Kalau ternyata yg anda dapatkan, misalnya FULL TABLE scan, artinya index yg anda buat tidak terpakai. Alternatif lain agar supaya performancenya baik, kalau anda menggunakan Oracle Enterprise Edition, mungkin bisa anda terapkan PARTITIONING OPTION (partisi data table & index). CMIIW, Bowo --- In [email protected], Ronald Speirs <[EMAIL PROTECTED]> wrote: > > > > bagaimana hasil EXPLAIN PLAN terhadap perintah ini? > > > > --- > > Dear para master oracle, > > > Saya ada masalah dengan query yang saya jalankan. Query ini di > > jalankan di table yang ukurannya cukup besar sekitar 40jt record. > > > select trunc(mt.c), mt.b, ss.c, count(*) total > > from mt, ss > > where mt.a = ss.a and > > mt.c between to_date(P_FROM_DATE, 'yyyy-mm-dd') and > > to_date(P_TO_DATE, 'yyyy-mm-dd') and > > mt.b between 1100 and 1199 > > group by trunc(mt.c), mt.b, ss.c > > order by trunc(mt.c) asc, mt.b asc, ss.c asc > > > > Saya sudah buat index di mt.a, ss.a dan compund index (mt.b, mt.c) > > Untuk eksekusi-nya kenapa membutuhkan waktu yang sangat lama > > sekali? bisa seharian, sampai harus di-kill process-nya. Saya liat > > di OEM juga buka merupakan "Long Operation" process. > > > > Terima kasih atas masukkannya > > > Regards, > > --Pandu > -- -----------I.N.D.O - O.R.A.C.L.E--------------- Keluar: [EMAIL PROTECTED] Website: http://indo-oracle.lizt.org (NEW) ----------------------------------------------- Bergabung dengan Indonesia Thin Client User Groups, Terminal Server, Citrix, New Moon Caneveral, di: http://indo-thin.vze.com Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/indo-oracle/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/

