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

sql語句優(yōu)化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的語句

 更新時(shí)間:2007年08月23日 17:43:10   作者:  
在許多基于基礎(chǔ)表的查詢中,為了滿足一個(gè)條件,往往需要對(duì)另一個(gè)表進(jìn)行聯(lián)接。在這種情況下, 使用EXISTS(或NOT EXISTS)通常將提高查詢的效率。在子查詢中,NOT IN子句將執(zhí)行一個(gè)內(nèi)部的排序和合并。無論在哪種情況下,NOT IN都是最低效的 (因?yàn)樗鼘?duì)子查詢中的表執(zhí)行了一個(gè)全表遍歷)。為了避免使用NOT IN ,我們可以把它改寫成外連接(Outer Joins)或NOT EXISTS。



我要查詢 Sendorder表中的冗余數(shù)據(jù)(沒有和reg_person或worksite相連的數(shù)據(jù))

sql="select Sendorder.id,Sendorder.reads,Sendorder.addtime from Sendorder where Sendorder.person_id not in(select user_id from reg_person ) or Sendorder.worksite_id not in(select id from worksite) order by Sendorder.addtime desc"
程序執(zhí)行時(shí)間:40109.38毫秒

sql="select Sendorder.id,Sendorder.reads,Sendorder.addtime from Sendorder where not EXISTS (SELECT id FROM reg_person where reg_person.user_id=Sendorder.person_id) or not EXISTS (SELECT id FROM worksite where worksite.id=Sendorder.worksite_id) order by Sendorder.addtime desc"
程序執(zhí)行時(shí)間:8531.25毫秒

很明顯使用not EXISTS效率高多了 

相關(guān)文章

  • SQL2008 詳解直接將XML存入到SQL中

    SQL2008 詳解直接將XML存入到SQL中

    這篇文章主要介紹了SQL2008 詳解直接將XML存入到SQL中的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • SQLServer中MERGE語句的使用

    SQLServer中MERGE語句的使用

    MERGE語句用于根據(jù)兩個(gè)表之間的條件來插入、更新或刪除記錄,本文主要介紹了SQLServer中MERGE語句的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-08-08
  • sql 數(shù)據(jù)庫還原圖文教程

    sql 數(shù)據(jù)庫還原圖文教程

    一些網(wǎng)友詢問怎么調(diào)試MSSQL數(shù)據(jù)庫的程序,開始簡(jiǎn)單說了下,但怕大家不明白,還是做了個(gè)圖片版的說明,希望大家能看懂。
    2009-05-05
  • Mysql中悲觀鎖與樂觀鎖應(yīng)用介紹

    Mysql中悲觀鎖與樂觀鎖應(yīng)用介紹

    樂觀鎖對(duì)應(yīng)于生活中樂觀的人總是想著事情往好的方向發(fā)展,悲觀鎖對(duì)應(yīng)于生活中悲觀的人總是想著事情往壞的方向發(fā)展.這兩種人各有優(yōu)缺點(diǎn),不能不以場(chǎng)景而定說一種人好于另外一種人,文中詳細(xì)介紹了悲觀鎖與樂觀鎖,需要的朋友可以參考下
    2022-08-08
  • SqlServer數(shù)據(jù)庫全角轉(zhuǎn)換成半角

    SqlServer數(shù)據(jù)庫全角轉(zhuǎn)換成半角

    SqlServer數(shù)據(jù)庫全角轉(zhuǎn)換成半角,需要的朋友可以參考一下
    2013-03-03
  • SQL Server誤區(qū)30日談 第23天 有關(guān)鎖升級(jí)的誤區(qū)

    SQL Server誤區(qū)30日談 第23天 有關(guān)鎖升級(jí)的誤區(qū)

    在SQL Server 2005和之前的版本,頁鎖會(huì)直接升級(jí)到表鎖。在SQL Server 2005或SQL Server 2008,你可以通過如下跟蹤標(biāo)志改變鎖升級(jí)的行為
    2013-01-01
  • SQL SERVER 中構(gòu)建執(zhí)行動(dòng)態(tài)SQL語句的方法

    SQL SERVER 中構(gòu)建執(zhí)行動(dòng)態(tài)SQL語句的方法

    這篇文章主要介紹了SQL SERVER 中構(gòu)建執(zhí)行動(dòng)態(tài)SQL語句的方法,需要的朋友可以參考下
    2017-06-06
  • 解鎖?SQL?Server?2022的時(shí)間序列數(shù)據(jù)功能(示例詳解)

    解鎖?SQL?Server?2022的時(shí)間序列數(shù)據(jù)功能(示例詳解)

    SQL?Server2022在處理時(shí)間序列數(shù)據(jù)時(shí),SQL?Server?提供了一些優(yōu)化和功能,比如?DATE_BUCKET?函數(shù)、窗口函數(shù)以及其他時(shí)間日期函數(shù),以便更高效地處理時(shí)間序列數(shù)據(jù),這篇文章主要介紹了解鎖?SQL?Server?2022的時(shí)間序列數(shù)據(jù)功能,需要的朋友可以參考下
    2024-08-08
  • MSSQL自動(dòng)重建出現(xiàn)碎片的索引的方法分享

    MSSQL自動(dòng)重建出現(xiàn)碎片的索引的方法分享

    無論何時(shí)對(duì)基礎(chǔ)數(shù)據(jù)執(zhí)行插入、更新或刪除操作,SQL Server 數(shù)據(jù)庫引擎都會(huì)自動(dòng)維護(hù)索引。隨著時(shí)間的推移,這些修改可能會(huì)導(dǎo)致索引中的信息分散在數(shù)據(jù)庫中(含有碎片)。當(dāng)索引包含的頁中的邏輯排序(基于鍵值)與數(shù)據(jù)文件中的物理排序不匹配時(shí),就存在碎片。碎片非常多的索引可能會(huì)降低查詢性能,導(dǎo)致應(yīng)用程序響應(yīng)緩慢。
    2014-06-06
  • 記一次成功的sql注入入侵檢測(cè)附帶sql性能優(yōu)化

    記一次成功的sql注入入侵檢測(cè)附帶sql性能優(yōu)化

    很多同學(xué)和園友都遇到過sql注入的,其中大部分都是代碼的不嚴(yán)謹(jǐn)造成的,都是犯過很多錯(cuò)誤才學(xué)會(huì)認(rèn)真起來
    2011-09-09

最新評(píng)論

巴青县| 张家川| 陆丰市| 晋宁县| 彭山县| 云浮市| 临沭县| 新津县| 苍山县| 太和县| 平顶山市| 阳朔县| 祁东县| 福建省| 西乌珠穆沁旗| 连南| 中山市| 汝城县| 井冈山市| 盈江县| 澜沧| 凤阳县| 句容市| 白沙| 东兰县| 哈尔滨市| 光泽县| 句容市| 郴州市| 蒙山县| 阜新| 开阳县| 宜春市| 吉水县| 弋阳县| 东莞市| 临清市| 鲁山县| 宁蒗| 五大连池市| 南昌县|