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的歸屬。

主站蜘蛛池模板: 成人午夜av| 国产欧美激情 | 婷婷免费视频 | 国产精品久久久久久妇女6080 | 91av导航 | 精品在线一区 | 国产一区视频在线播放 | 午夜影院免费 | 97在线观看免费视频 | 免费理论片 | 日韩久久久久久久 | av一区二区三区在线观看 | 夜夜嗨av一区二区三区 | 亚洲综合日韩 | 久久性生活视频 | 精品视频一区二区三区四区 | 欧美综合在线视频 | av在线免费播放 | 黄色片观看 | 成人精品在线视频 | 成人福利在线 | 三级理论片 | 日本免费视频 | 日本理论片午伦夜理片在线观看 | 成人黄性视频 | 国产高潮在线观看 | 色在线播放 | 玖草在线 | 亚洲伊人影院 | 国产性生活视频 | 四川毛片 | 国产精品亚洲精品 | 亚洲天堂一区二区三区 | 国产乡下妇女做爰视频 | 国产香蕉视频 | 欧美综合在线观看 | 中文字幕日韩一区 | 国产精品成人一区二区三区 | 亚洲成人免费 | 日韩免费成人 | av免费观看网站 |