新聞中心
Oracle數(shù)據(jù)庫在當(dāng)今數(shù)據(jù)庫市場上占有著一定的份額,所以掌握好Oracle數(shù)據(jù)庫也是非常有必要的,能夠掌握Oracle數(shù)據(jù)庫Where條件執(zhí)行順序也會成為您在社會競爭中的有力條件。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、海州網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、海州網(wǎng)絡(luò)營銷、海州企業(yè)策劃、海州品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供海州建站搭建服務(wù),24小時服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
由于SQL優(yōu)化起來比較復(fù)雜,并且還會受環(huán)境限制,在開發(fā)過程中,寫SQL必須必須要遵循以下幾點(diǎn)的原則:
1.ORACLE采用自下而上的順序解析WHERE子句,根據(jù)這個原理,表之間的連接必須寫在其他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時,使用動態(tài)SQL列引用 ‘*’ 是一個方便的方法.可是,這是一個非常低效的方法. 實(shí)際上,ORACLE在解析的過程中, 會將’*’ 依次轉(zhuǎn)換成所有的列名, 這個工作是通過查詢數(shù)據(jù)字典完成的, 這意味著將耗費(fèi)更多的時間.
3.使用表的別名(Alias)
當(dāng)在SQL語句中連接多個表時, 請使用表的別名并把別名前綴于每個Column上.這樣一來,就可以減少解析的時間并減少那些由Column歧義引起的語法錯誤.
注:Column歧義指的是由于SQL中不同的表具有相同的Column名,當(dāng)SQL語句中出現(xiàn)這個Column時,SQL解析器無法判斷這個Column的歸屬。
Oracle數(shù)據(jù)庫中還涉及到更多的語句條件,本文就為大家介紹Where條件執(zhí)行順序,大家好可以去了解更多的Oracle數(shù)據(jù)庫語句條件,希望上文中介紹的內(nèi)容對大家能夠有所幫助。
【編輯推薦】
- Oracle數(shù)據(jù)庫中重定義表的介紹
- 數(shù)據(jù)訪問由SQL Server遷移向Oracle數(shù)據(jù)庫的問題整理
- Oracle數(shù)據(jù)庫中的字符處理技巧總結(jié)
名稱欄目:輕松掌握Oracle數(shù)據(jù)庫Where條件執(zhí)行順序
本文URL:http://m.fisionsoft.com.cn/article/cojdsjc.html


咨詢
建站咨詢
