国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

ORACLE SQL性能優(yōu)化系列(四)

2024-08-29 13:32:50
字體:
供稿:網(wǎng)友

5.WHERE子句中的連接順序.

Oracle采用自下而上的順序解析WHERE子句,根據(jù)這個原理,表之間的連接必須寫在其他WHERE條件之前, 那些可以過濾掉最大數(shù)量記錄的條件必須寫在WHERE子句的末尾.

例如:

(低效,執(zhí)行時間156.3秒)

SELECT …

FROM EMP E

WHERE  SAL > 50000

AND    JOB = ‘MANAGER’

AND    25 < (SELECT COUNT(*) FROM EMP

             WHERE MGR=E.EMPNO);

(高效,執(zhí)行時間10.6秒)

SELECT …

FROM EMP E

WHERE 25 < (SELECT COUNT(*) FROM EMP

             WHERE MGR=E.EMPNO)

AND    SAL > 50000

AND    JOB = ‘MANAGER’;


6.     SELECT子句中避免使用 ‘ * ‘

當(dāng)你想在SELECT子句中列出所有的COLUMN時,使用動態(tài)SQL列引用 ‘*’ 是一個方便的方法.不幸的是,這是一個非常低效的方法. 實際上,ORACLE在解析的過程中, 會將’*’ 依次轉(zhuǎn)換成所有的列名, 這個工作是通過查詢數(shù)據(jù)字典完成的, 這意味著將耗費更多的時間.


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 马关县| 承德县| 榆社县| 道孚县| 南雄市| 昔阳县| 神农架林区| 邵阳市| 博爱县| 社会| 霍林郭勒市| 湾仔区| 甘孜| 兰西县| 秦皇岛市| 漯河市| 盐边县| 射洪县| 青岛市| 涞源县| 盐源县| 增城市| 都安| 六盘水市| 土默特右旗| 电白县| 玉门市| 黑山县| 甘南县| 佛冈县| 漯河市| 正镶白旗| 莱芜市| 奉新县| 宜兴市| 绍兴市| 毕节市| 固安县| 仪征市| 伊金霍洛旗| 大埔县|