oracle 索引列更新變慢

2021-06-01 19:43:04 字數 536 閱讀 5886

前段時間維護資料需要將一張千萬數量級表中cardno長度為9的資料cardtype更改為其他值,在cardtype和cardno上建有索引,

開始用 update card_table set cardtype='x' where cardtype='a' and length(cardno)=9 and rownum<100000

速度很快,過一段時間之後發現速度越來越慢;即使是查詢

select count( cardno ) where cardtype='a' and length(cardno)=9 and rownum<100000 速度也很慢;

推測是由於做rangescan的時候 掃瞄太多不滿足條件的資料,於是加上 index_desc的hint,果然查詢快了很多

於是將更新修改為 update card_table set cardtype='x' where cardtype='a' and  cardno like '1%'  and length(cardno)=9 and rownum<100000

限定更新範圍,果然速度有所提公升。

blog更新變慢的原因

由於換了工作,一直在黃區。最近學習了fork程序的排程流程,也寫了總結文件。但是無法帶出來。所以,會對更新blog造成一些阻礙 我原本計畫的是乙個月至少更新一篇 只能通過記憶,出了黃區重新再根據開源 寫一遍。目前計畫是這樣的 我先在黃區總結,出了黃區再重寫,發blog。累是累點,不過也能再鞏固一下,...

可更新聚集列儲存索引幻想

在今天的文章裡,我想專門詳細談下sql server 2014引入的可更新聚集列儲存索引 updateable clustered columnstore index 在我們進入細節討論前,我想先給你簡單介紹下它在sql server 2012裡出現時的情況,還有它們的侷限性。sql server ...

可更新聚集列儲存索引幻想

在今天的文章裡,我想專門詳細談下sql server 2014引入的可更新聚集列儲存索引 updateable clustered columnstore index 在我們進入細節討論前,我想先給你簡單介紹下它在sql server 2012裡出現時的情況,還有它們的侷限性。sql server ...