第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

“不存在”與“左聯(lián)接”之間有什么區(qū)別?

“不存在”與“左聯(lián)接”之間有什么區(qū)別?

哈士奇WWW 2019-06-15 13:04:00
“不存在”與“左聯(lián)接”之間有什么區(qū)別?在我看來(lái),您可以在SQL查詢中使用“不存在”、“不使用IN”或“左聯(lián)接為空”來(lái)執(zhí)行相同的操作。例如:SELECT a FROM table1 WHERE a NOT IN (SELECT a FROM table2)SELECT a FROM table1 WHERE NOT EXISTS (SELECT * FROM table2 WHERE table1.a = table2.a) SELECT a FROM table1 LEFT JOIN table2 ON table1.a = table2.a WHERE table1.a IS NULL我不確定是否所有語(yǔ)法都是正確的,但這是我所見過的一般技巧。我為什么要選擇一個(gè)而另一個(gè)呢?表現(xiàn)不同嗎.?其中哪一個(gè)是最快/最有效的?(如果這取決于實(shí)現(xiàn),何時(shí)使用?)
查看完整描述

3 回答

?
HUX布斯

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超6個(gè)贊

簡(jiǎn)而言之:

NOT IN有點(diǎn)不同:如果只有一個(gè)NULL在名單上。

  • 在……里面MySQLNOT EXISTS效率有點(diǎn)低

  • 在……里面SQL ServerLEFT JOIN / IS NULL效率較低

  • 在……里面PostgreSQLNOT IN效率較低

  • 在……里面Oracle,這三種方法都是相同的。


查看完整回答
反對(duì) 回復(fù) 2019-06-15
?
MYYA

TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊

如果數(shù)據(jù)庫(kù)擅長(zhǎng)優(yōu)化查詢,那么第一個(gè)查詢將被轉(zhuǎn)換為接近第三個(gè)查詢的查詢。

對(duì)于問題中的簡(jiǎn)單情況,應(yīng)該很少或根本沒有區(qū)別,因?yàn)樗鼈兌紝⒁月?lián)接的形式執(zhí)行。在更復(fù)雜的查詢中,數(shù)據(jù)庫(kù)可能無(wú)法從not innot exists開雷耶斯。在這種情況下,查詢將變得更慢。另一方面,如果沒有可以使用的索引,聯(lián)接也可能執(zhí)行不好,所以僅僅因?yàn)槭褂寐?lián)接并不意味著您是安全的。您必須檢查查詢的執(zhí)行計(jì)劃,以判斷是否存在性能問題。


查看完整回答
反對(duì) 回復(fù) 2019-06-15
?
小怪獸愛吃肉

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊

假設(shè)您正在避免空值,它們都是編寫反連接使用標(biāo)準(zhǔn)SQL。

一個(gè)明顯的遺漏是等效的使用EXCEPT:

SELECT a FROM table1EXCEPTSELECT a FROM table2

注在Oracle中,您需要使用MINUS運(yùn)算符(可以說(shuō)是一個(gè)更好的名稱):

SELECT a FROM table1
MINUSSELECT a FROM table2

說(shuō)到專有語(yǔ)法,也可能有非標(biāo)準(zhǔn)的等價(jià)物值得研究,這取決于您正在使用的產(chǎn)品。OUTER APPLY在SQLServer中(類似于):

SELECT t1.a  FROM table1 t1       OUTER APPLY 
       (
        SELECT t2.a          FROM table2 t2         WHERE t2.a = t1.a       ) AS dt1 WHERE dt1.a IS NULL;


查看完整回答
反對(duì) 回復(fù) 2019-06-15
  • 3 回答
  • 0 關(guān)注
  • 536 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)