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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PostgreSQL中的橫向查詢和子查詢有什么區(qū)別?

PostgreSQL中的橫向查詢和子查詢有什么區(qū)別?

PIPIONE 2019-06-06 14:31:20
PostgreSQL中的橫向查詢和子查詢有什么區(qū)別?因?yàn)镻ostgres有能力LATERAL加入,我一直在閱讀它,因?yàn)槲夷壳盀槲业膱F(tuán)隊(duì)做了復(fù)雜的數(shù)據(jù)轉(zhuǎn)儲,有很多效率低下的子查詢,使得整個查詢需要四分鐘或更長時間。我明白LATERALJOIN也許可以幫助我,但即使在閱讀了以下文章之后這一個從堆分析,我仍然不太明白。的用例是什么?LATERAL加入?.‘>之間的區(qū)別是什么?LATERAL加入和子查詢?
查看完整描述

3 回答

?
拉風(fēng)的咖菲貓

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個贊

非-lateral和一個lateral連接取決于是否可以查看左手表的行。例如:

select  *from    table1 t1cross join lateral        (
        select  *
        from    t2        where   t1.col1 = t2.col1 -- Only allowed because of lateral
        ) sub

這種“向外看”意味著必須對子查詢進(jìn)行多次計(jì)算。畢竟,t1.col1可以假定很多值。

相反,非-lateral可以對聯(lián)接進(jìn)行一次評估:

select  *from    table1 t1cross join
        (
        select  *
        from    t2        where   t2.col1 = 42 -- No reference to outer query
        ) sub

如所需lateral,內(nèi)部查詢在任何方面都不依賴于外部查詢。一個lateral查詢是correlated查詢,因?yàn)樗c查詢本身之外的行有關(guān)聯(lián)。


查看完整回答
反對 回復(fù) 2019-06-06
  • 3 回答
  • 0 關(guān)注
  • 1292 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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