Where....in 不同資料庫使用比較1. TableA 內有6000筆資料2. TableB 內有22000筆資料其中要從TableB 的ciid 為 586 , 取得多筆cpid 值再關連到TableA 顯示其資料下的Query 為:Select cpid, partnameFrom TableAwhere cpid in(Select distinct cpid From TableB where ciid=586);結果為6筆資料[MySQL4.1] 120秒[MySQL5.0] 105秒[Oracle 9i] 0.016秒兩者差異很大, 為了讓MySQL4.1執行效能加快, 改下另一個Query:Select a.cpid, a.partnameFrom TableA a, (Select distinct cpid from TableB where ciid=586) bwhere a.cpid=b.cpid;[MySQL4.1] 0.0217秒[MySQL5.0] 0.0215秒[Oracle 9i] 0.016秒顯然上述Query 對MySQL 執行效能加快很多, Oracle 則相同速度where...in 的Query 仍需留意在不同資料庫有不同效能!!ps. MySQL 5.0 對於執行Where...in 的效能好像沒有改善多少... .msgcontent .wsharing ul li { text-indent: 0; } 分享 Facebook Plurk YAHOO! .
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 pa000017 的頭像
    pa000017

    烤火雞

    pa000017 發表在 痞客邦 留言(0) 人氣()