Perkiraan saya, klausa seperti di bawah (query 1) membuat si DB terpaksa melakukan komputasi FirstName || LastName utk setiap row, jadinya hasilnya lebih jelek. Bandingkan misalnya dengan menggunakan function-based index yg komputasinya dilakukan pas membangun index. Query 2 sendiri memungkinkan menggunakan composite index yg ada. Query 1 plannya full table scan bukan? Btw cost-based optimizer nggak cuma tergantung pada struktur, tapi juga tergantung datanya (statistik datanya tepatnya).
panji 2009/9/6 martinus j wahyudi <[email protected]> > > > Dear all friends, > > mau nanya, katakan ada tabel seperti ini: > > ID, First_Name, Last_Name, Value > > Kemudian saya melakukan query seperti ini: > select * from table where First_Name||Last_Name = "JohnKerry"; > > dan > > select * from table where First_Name= 'John' and Last_Name = 'Kerry'; > > Menurut kalian, mana query yang memberikan performansi terbaik. Kalo aku > liat di query analyzer, kok cost-nya mahal yg query pertama ya. > > tapi ada temen saya yang ngeyel klo query yang pertama lebih baik. > > Catt: First Name, dan Last Name sudah dibuatkan composite index (firstname, > lastname) > > Sincerely, > > Martin > > > > > > [Non-text portions of this message have been removed]

