一條SQL語句變得巨慢的原因及其解決方法
來源:懂視網(wǎng)
責編:小采
時間:2020-11-09 09:11:08
一條SQL語句變得巨慢的原因及其解決方法
一條SQL語句變得巨慢的原因及其解決方法:[導讀] 現(xiàn)象:一條SQL突然運行的特別慢。 select uidTable column_value, first_name last_name, company, job_title, upper(member_level), upper(service_value)from (select * from table(select
導讀一條SQL語句變得巨慢的原因及其解決方法:[導讀] 現(xiàn)象:一條SQL突然運行的特別慢。 select uidTable column_value, first_name last_name, company, job_title, upper(member_level), upper(service_value)from (select * from table(select

[導讀] 現(xiàn)象:一條SQL突然運行的特別慢。 select uidTable column_value, first_name|| ||last_name, company, job_title, upper(member_level), upper(service_value)from (select * from table(select c
現(xiàn)象:一條SQL突然運行的特別慢。
出錯原因:用戶增加了一個條件member.site=test,造成連接的順序變化了,原來的驅(qū)動表是uidTable(最多1024條記錄),現(xiàn)在變成了member表做驅(qū)動(600W條)。所以這條語句變的巨慢。
但是既然是外連接,為什么連接的順序會改變呢?因為外連接的連接順序不是由COST決定的,而是由連接的條件決定的。發(fā)現(xiàn)執(zhí)行計劃如下:
為什么根本就沒有執(zhí)行外連接呢?問題出在member.site='test'這個條件上,因為對外連接的表加了條件,造成外連接失效。改為member.site(+)='test'后,問題徹底解決。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
一條SQL語句變得巨慢的原因及其解決方法
一條SQL語句變得巨慢的原因及其解決方法:[導讀] 現(xiàn)象:一條SQL突然運行的特別慢。 select uidTable column_value, first_name last_name, company, job_title, upper(member_level), upper(service_value)from (select * from table(select