最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

oracle select執(zhí)行順序的詳解

 更新時(shí)間:2013年05月30日 11:11:03   作者:  
本篇文章是對(duì)oracle select執(zhí)行順序進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
SQL Select語(yǔ)句完整的執(zhí)行順序:
1、from子句組裝來(lái)自不同數(shù)據(jù)源的數(shù)據(jù);
2、where子句基于指定的條件對(duì)記錄行進(jìn)行篩選;
3、group by子句將數(shù)據(jù)劃分為多個(gè)分組;
4、使用聚集函數(shù)進(jìn)行計(jì)算;
5、使用having子句篩選分組;
6、計(jì)算所有的表達(dá)式;
7、使用order by對(duì)結(jié)果集進(jìn)行排序。

oracle 語(yǔ)句提高查詢(xún)效率的方法
1:.. where column in(select * from ... where ...);
2:... where exists (select 'X' from ...where ...);
第二種格式要遠(yuǎn)比第一種格式的效率高。在Oracle中可以幾乎將所有的IN操作符子查詢(xún)改寫(xiě)為使用EXISTS的子查詢(xún)
使用EXISTS,Oracle系統(tǒng)會(huì)首先檢查主查詢(xún),然后運(yùn)行子查詢(xún)直到它找到第一個(gè)匹配項(xiàng),這就節(jié)省了時(shí)間
Oracle系統(tǒng)在執(zhí)行IN子查詢(xún)時(shí),首先執(zhí)行子查詢(xún),并將獲得的結(jié)果列表存放在在一個(gè)加了索引的臨時(shí)表中

選擇最有效率的表名順序(只在基于規(guī)則的優(yōu)化器中有效)
ORACLE的解析器按照從右到左的順序處理FROM子句中的表名,因此FROM子句中寫(xiě)在最后的表(基礎(chǔ)表 driving table)將被最先處理。在FROM子句中包含多個(gè)表的情況下,你必須選擇記錄條數(shù)最少的表作為基礎(chǔ)表。當(dāng)ORACLE處理多個(gè)表時(shí),會(huì)運(yùn)用排序及合并的方式連接它們。首先,掃描第一個(gè)表(FROM子句中最后的那個(gè)表)并對(duì)記錄進(jìn)行派序,然后掃描第二個(gè)表(FROM子句中最后第二個(gè)表),最后將所有從第二個(gè)表中檢索出的記錄與第一個(gè)表中合適記錄進(jìn)行合并。
如果有3個(gè)以上的表連接查詢(xún),那就需要選擇交叉表(intersection table)作為基礎(chǔ)表,交叉表是指那個(gè)被其他表所引用的表。

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

相關(guān)文章

  • Oracle中直方圖對(duì)執(zhí)行計(jì)劃的影響詳解

    Oracle中直方圖對(duì)執(zhí)行計(jì)劃的影響詳解

    這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫(kù)中直方圖對(duì)執(zhí)行計(jì)劃的影響的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • MySQL安全性指南(3)(轉(zhuǎn))

    MySQL安全性指南(3)(轉(zhuǎn))

    MySQL安全性指南(3)(轉(zhuǎn))...
    2007-03-03
  • Linux服務(wù)器下oracle實(shí)現(xiàn)rman自動(dòng)備份的方式

    Linux服務(wù)器下oracle實(shí)現(xiàn)rman自動(dòng)備份的方式

    為確保oracle數(shù)據(jù)庫(kù)數(shù)據(jù)的安全和一致性,一般我們都需要利用備份手段進(jìn)行數(shù)據(jù)庫(kù)的備份,在oracle數(shù)據(jù)庫(kù)中,rman因其強(qiáng)大的功能和完善的手段,成為數(shù)據(jù)庫(kù)備份的首選,故以下通過(guò)兩種方式配置腳本,實(shí)現(xiàn)rman自動(dòng)備份,需要的朋友可以參考下
    2024-11-11
  • Oracle數(shù)據(jù)庫(kù)中的優(yōu)化方法

    Oracle數(shù)據(jù)庫(kù)中的優(yōu)化方法

    這篇文章主要給大家介紹了Oracle數(shù)據(jù)庫(kù)中的優(yōu)化方法,Oracle數(shù)據(jù)庫(kù)是當(dāng)前應(yīng)用最廣泛的大型數(shù)據(jù)庫(kù)之一,其系統(tǒng)結(jié)構(gòu)復(fù)雜,性能受多方面因素影響,其中查詢(xún)操作是影響其性能的關(guān)鍵因素,需要的朋友可以參考下
    2023-07-07
  • Oracle中TIMESTAMP的幾種類(lèi)型介紹與實(shí)例

    Oracle中TIMESTAMP的幾種類(lèi)型介紹與實(shí)例

    我們都知道date和timestamp都是對(duì)日期和時(shí)間的表示,只是兩種類(lèi)型的精確度不同,前者精確到秒,后者精確到小數(shù)秒(fractional_seconds_precision),可以是 0 to 9,缺省是6。這篇文章主要介紹了Oralce中TIMESTAMP的幾種類(lèi)型。有需要的朋友們可以參考借鑒。
    2016-12-12
  • oracle數(shù)據(jù)庫(kù)密碼到期怎么解決

    oracle數(shù)據(jù)庫(kù)密碼到期怎么解決

    這篇文章主要介紹了oracle數(shù)據(jù)庫(kù)密碼到期的解決方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的的朋友參考下
    2017-02-02
  • Linux下啟動(dòng)Oracle服務(wù)和監(jiān)聽(tīng)程序步驟

    Linux下啟動(dòng)Oracle服務(wù)和監(jiān)聽(tīng)程序步驟

    這篇文章給大家介紹了Linux下啟動(dòng)Oracle服務(wù)和監(jiān)聽(tīng)程序步驟,在文章末尾給大家介紹了Oracle數(shù)據(jù)庫(kù)的啟動(dòng)和關(guān)閉方式小結(jié),感興趣的朋友一起看看吧
    2017-08-08
  • 詳解Oracle在out參數(shù)中訪(fǎng)問(wèn)光標(biāo)

    詳解Oracle在out參數(shù)中訪(fǎng)問(wèn)光標(biāo)

    這篇文章主要介紹了詳解Oracle在out參數(shù)中訪(fǎng)問(wèn)光標(biāo)的相關(guān)資料,這里提供實(shí)例代碼幫助大家學(xué)習(xí)理解這部分內(nèi)容,希望能幫助到大家,需要的朋友可以參考下
    2017-08-08
  • 查找oracle數(shù)據(jù)庫(kù)表中是否存在系統(tǒng)關(guān)鍵字的方法

    查找oracle數(shù)據(jù)庫(kù)表中是否存在系統(tǒng)關(guān)鍵字的方法

    遇到列說(shuō)明無(wú)效的報(bào)錯(cuò)情況,這是由于數(shù)據(jù)庫(kù)列名起的不好引起的,名字用到了數(shù)據(jù)庫(kù)的關(guān)鍵字
    2014-07-07
  • Oracle數(shù)據(jù)庫(kù)升級(jí)或數(shù)據(jù)遷移方法研究

    Oracle數(shù)據(jù)庫(kù)升級(jí)或數(shù)據(jù)遷移方法研究

    本文詳細(xì)論述了oracle數(shù)據(jù)庫(kù)升級(jí)的升級(jí)前的準(zhǔn)備、升級(jí)過(guò)程和升級(jí)后的測(cè)試與調(diào)整工作,并對(duì)各種升級(jí)方法在多種操作系統(tǒng)平臺(tái)上作了測(cè)試。
    2016-07-07

最新評(píng)論

陆川县| 瓦房店市| 白沙| 封丘县| 陈巴尔虎旗| 嘉祥县| 上杭县| 醴陵市| 上杭县| 河间市| 拜城县| 耒阳市| 收藏| 筠连县| 姜堰市| 会昌县| 巨鹿县| 涪陵区| 景东| 汉川市| 尉犁县| 临邑县| 抚松县| 安顺市| 香河县| 丰镇市| 石狮市| 新田县| 宣汉县| 平顶山市| 冀州市| 武功县| 五峰| 澜沧| 承德市| 永平县| 当阳市| 牙克石市| 绥江县| 金沙县| 永清县|