Saya punya dua macam query :
Query 1 :
select distinct
a.*
from T1 a, T2 b, T3 c, T4 d, T5 e, T6 f
where
a.uid = "yusron"
or (a.uid <> "yusron"
and ( ( a.uid = c.uid and c.guid = "yusron" and a.eid = c.eid )
or ( ((a.uid = f.uid) or (a.uid = f.uidc))
and b.ggid = f.gid and ((f.uid = "yusron") or (f.uidc
= "yusron")) and
a.eid = b.eid
)
)
and ( ( a.uid = e.tuid and e.uid = "yusron" )
or ( ((a.uid = f.uid) or (a.uid = f.uidc))
and d.tgid = f.gid and ((f.uid = "yusron") or (f.uidc
= "yusron"))
)
)
)
Waktu eksekusi : 4,46 detik
Query 2 : (ini hampir sama dengan Query 1 dengan menghilangkan syarat a.uid
= 'yusron')
select distinct
a.*
from T1 a, T2 b, T3 c, T4 d, T5 e, T6 f
where
a.uid <> "yusron"
and ( ( a.uid = c.uid and c.guid = "yusron" and a.eid = c.eid )
or ( ((a.uid = f.uid) or (a.uid = f.uidc))
and b.ggid = f.gid and ((f.uid = "yusron") or (f.uidc
= "yusron")) and
a.eid = b.eid
)
)
and ( ( a.uid = e.tuid and e.uid = "yusron" )
or ( ((a.uid = f.uid) or (a.uid = f.uidc))
and d.tgid = f.gid and ((f.uid = "yusron") or (f.uidc
= "yusron"))
)
)
Waktu eksekusi : 0,05 detik
Jadi query pertama butuh waktu hampir 90x query kedua untuk
menyelesaikannya. Ada yang punya penjelasan ??? Lebih penting lagi ada yang
punya alternatif pemecahannya ??? Masalahnya yang saya perlu pakai adalah
query pertama dan saya kira waktu 4,46 detik itu masih jauh dari harapan.
Catatan : Semua kolom yang dijadikan syarat di WHERE adalah kolom terindeks.
Spek mesin : Pentium II 266 / 64 MB.
============================================
Nabi Muhammad SAW : Tiadalah kamu mendapat pertolongan dan rezeki, kecuali
karena orang-orang lemah (dhuafa) dari kalangan kamu"
(HR. Bukhari)
--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]