濮阳杆衣贸易有限公司

主頁 > 知識庫 > 簡述Oracle中in和exists的不同

簡述Oracle中in和exists的不同

熱門標(biāo)簽:電話機(jī)器人那種好 百度地圖標(biāo)注飯店位置怎么 地圖標(biāo)注的坐標(biāo)點 南通電銷外呼系統(tǒng)哪家強(qiáng) 百度地圖標(biāo)注注解 區(qū)域地圖標(biāo)注怎么設(shè)置 理財產(chǎn)品電銷機(jī)器人 上海網(wǎng)絡(luò)外呼系統(tǒng) 外呼系統(tǒng)好點子

一直以來,大家認(rèn)為exists比in速度快,其實是不準(zhǔn)確的。且看接下來的具體分析:in其實是將外表和內(nèi)表進(jìn)行hash join,exists是先對外表進(jìn)行l(wèi)oop操作,然后每次loop后再對內(nèi)表進(jìn)行查詢。

如果兩張表大小差不多,那么exists和in的效率差不多。

例如: 一張大表為A,一張小表B

一、第一種情況

select * from A where mm in (select mm from B)

效率高,這里用到的是大表A上的索引

select * from B exists (select mm from A where mm=B.mm)

效率高,這里用到的是小表B上的索引

二、第二種情況

select * from B where mm in (select mm from A)

效率低,這里用到的是小表B上的索引

select * from A exists (select mm from B where mm=A.mm)

效率高,這里用到的是大表A上的索引

三、第三種情況

not exists 在使用時依然會用到表上的索引,但是not in會進(jìn)行全盤掃描

因此,not exists 始終比not in 的效率高

四、第四種情況

in與==效果是相同的

總結(jié)

以上所述是小編給大家介紹的Oracle中in和exists的不同,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

您可能感興趣的文章:
  • Oracle In和exists not in和not exists的比較分析
  • Plsql Developer連接Oracle時出現(xiàn)Could not initialize oci.dll解決方案
  • Oracle minus用法詳解及應(yīng)用實例
  • linux系統(tǒng)oracle數(shù)據(jù)庫出現(xiàn)ora12505問題的解決方法
  • oracle中not exists對外層查詢的影響詳解

標(biāo)簽:昭通 自貢 紹興 遼源 海東 寧波 中衛(wèi) 百色

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《簡述Oracle中in和exists的不同》,本文關(guān)鍵詞  簡述,Oracle,中,和,exists,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《簡述Oracle中in和exists的不同》相關(guān)的同類信息!
  • 本頁收集關(guān)于簡述Oracle中in和exists的不同的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    山阴县| 闽侯县| 隆尧县| 揭东县| 都江堰市| 苗栗市| 德钦县| 松阳县| 靖州| 临沭县| 建湖县| 宁国市| 当阳市| 温泉县| 广饶县| 从化市| 翁牛特旗| 和顺县| 盈江县| 息烽县| 辽源市| 黄大仙区| 永兴县| 梁山县| 怀安县| 利津县| 石屏县| 营口市| 饶阳县| 卫辉市| 乌海市| 怀仁县| 监利县| 广河县| 兰溪市| 永丰县| 正定县| 光山县| 永清县| 临湘市| 宜兰市|