[英]Oracle Query in full table scan
我不明白為什么此表(按范圍划分)在此查詢中處於全表掃描狀態:
UPDATE customer_table
SET username = '',
phone = '',
ip = '',
cell = '',
channel = ''
WHERE id = '';
我還創建了此索引:
CREATE INDEX customer_table_UPD_EXT_SYS ON customer_table
(USERNAME, CLI, IP, MSISDN, CANALE, TN)
誰能幫我?
為了避免全表掃描,索引必須(至少部分)匹配WHERE
子句。 在您的示例中, customer_table.id
上的索引會有所幫助。 您的索引customer_table_UPD_EXT_SYS
包含更新的列; 對於您的UPDATE
語句,這實際上是一個壞消息,因為索引也需要更新,這可能比更新表貴。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.