av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

輕松掌握Oracle數(shù)據(jù)庫(kù)Where條件執(zhí)行順序

瀏覽:9日期:2023-11-05 08:14:52
由于SQL優(yōu)化起來比較復(fù)雜,并且還會(huì)受環(huán)境限制,在開發(fā)過程中,寫SQL必須必須要遵循以下幾點(diǎn)的原則:

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

例如:

(低效)

SELECT … FROM EMP E WHERE SAL > 50000 AND JOB = ‘MANAGER’ AND 25 < (SELECT COUNT(*) FROM EMP WHERE MGR=E.EMPNO);

(高效)

SELECT … FROM EMP E WHERE 25 < (SELECT COUNT(*) FROM EMP WHERE MGR=E.EMPNO) AND SAL > 50000 AND JOB = ‘MANAGER’;

2.SELECT子句中避免使用’*’

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

3.使用表的別名(Alias)

當(dāng)在SQL語(yǔ)句中連接多個(gè)表時(shí), 請(qǐng)使用表的別名并把別名前綴于每個(gè)Column上.這樣一來,就可以減少解析的時(shí)間并減少那些由Column歧義引起的語(yǔ)法錯(cuò)誤.

注:Column歧義指的是由于SQL中不同的表具有相同的Column名,當(dāng)SQL語(yǔ)句中出現(xiàn)這個(gè)Column時(shí),SQL解析器無法判斷這個(gè)Column的歸屬。

主站蜘蛛池模板: 精品日韩一区 | 午夜精 | 18gay男同69亚洲网站 | 日本黄色影片在线观看 | 人人九九 | 亚洲精品久久久 | 亚洲a一区| 久久久xx | 久久久亚洲一区 | 久久专区 | 国产激情视频在线免费观看 | 99热电影| 中文字幕一区二区三区精彩视频 | 精品国产久 | 精品国产31久久久久久 | 在线视频一区二区 | 91视频在线 | 久久久在线视频 | 亚洲精品自拍视频 | 亚洲一区日韩 | 欧美精品一区二区在线观看 | 日韩一区欧美一区 | 日韩在线视频播放 | 精品美女| 国产精品久久久久久久久久免费 | 在线观看亚洲精品视频 | 久久狠狠| 国产精品久久久久久久久久久久久 | 国产成人精品一区二 | 精品国产不卡一区二区三区 | 欧美一级二级视频 | 精品在线一区二区三区 | 免费视频一区二区 | 欧美一级大黄 | 91一区二区三区 | 国产日韩一区二区三免费 | 欧美二区三区 | 欧美三区在线观看 | 亚洲三级免费看 | 精品国产精品三级精品av网址 | 婷婷丁香在线视频 |