oracle 為什麼沒有使用索引的一種情況
存在以下索引
SQL> SELECT INDEX_NAME,COLUMN_NAME FROM USER_IND_COLUMNS WHERE INDEX_NAME='IDX_GBDS_CLIENT_GAME_EVENT';
INDEX_NAME COLUMN_NAME
------------------------------ --------------------------------------------------------------------------------
IDX_GBDS_CLIENT_GAME_EVENT CLIENT_ID
IDX_GBDS_CLIENT_GAME_EVENT GAME_CODE_ID
IDX_GBDS_CLIENT_GAME_EVENT EVENT_DATE
IDX_GBDS_CLIENT_GAME_EVENT BET_TYPE
1.下面這樣寫不會用上索引
SQL> select * from tb_game_bet_detail_snapshot where game_code_id=50000;
no rows selected
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT ptimizer=CHOOSE (Cost=7 Card=1050 Bytes=68
250)
1 0 TABLE ACCESS (FULL) OF 'TB_GAME_BET_DETAIL_SNAPSHOT' (Cost
=7 Card=1050 Bytes=68250)
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
126 consistent gets
0 physical reads
0 redo size
778 bytes sent via SQL*Net to client
364 bytes received via SQL*Net from client
1 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
0 rows processed
2.把謂詞全部寫上 用上快速索引掃描 一致性讀也降下來
SQL> select client_id,game_code_id,event_date,bet_type from tb_game_bet_detail_s
napshot where game_code_id=50000;
no rows selected
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT ptimizer=CHOOSE (Cost=5 Card=1050 Bytes=23
100)
1 0 INDEX (FAST FULL SCAN) OF 'IDX_GBDS_CLIENT_GAME_EVENT' (UN
IQUE) (Cost=5 Card=1050 Bytes=23100)
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
35 consistent gets
0 physical reads
0 redo size
353 bytes sent via SQL*Net to client
364 bytes received via SQL*Net from client
1 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
0 rows processed
SQL>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-419043/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [zt] Oracle不使用索引的幾種情況Oracle索引
- oracle組合索引什麼情況下生效?Oracle索引
- 什麼情況下需要建立索引? 索引的作用?為什麼能夠提高查詢速度?(索引的原理) 索引有什麼副作用嗎?索引
- oracle order by索引是否使用的情況Oracle索引
- 為什麼使用API?什麼情況下避免使用API?API
- 邦芒面試:為什麼你的面試沒回音?逃不過這8種情況面試
- 【MOS:1549181.1】為何在查詢中索引未被使用--為什麼索引沒有被使用索引
- 基於COST優化,oracle什麼情況不走索引優化Oracle索引
- Nature回應:為什麼在沒有程式碼的情況下發布AlphaFold3?
- ORACLE索引被抑制情況Oracle索引
- 【開發總結】order by 為什麼沒有走索引?索引
- (轉)Oracle為什麼不使用我的索引?Oracle索引
- MYSQL索引失效的各種情況小結MySql索引
- Oracle什麼情況下需要rebuild indexOracleRebuildIndex
- laravel-admin 2.0沒有rbac許可權了時什麼情況Laravel
- 為什麼Hook沒有ErrorBoundary?HookErrorORB
- 為什麼Google沒有客服?Go
- 開始使用 Org 模式吧,在沒有 Emacs 的情況下模式Mac
- oracle為什麼不走索引Oracle索引
- if 判斷為 false 的 6 種情況False
- mysql索引失效的情況MySql索引
- 簡單介紹MySQL索引失效的幾種情況MySql索引
- js中this指向有幾種情況JS
- 請問這種情況應該用什麼模式?模式
- 硬碟顯示沒有初始化未分配是什麼情況?快速恢復沒有初始化硬碟的檔案硬碟
- Oracle -- left join 什麼情況可以直接改成joinOracle
- Twitter為什麼沒有當機?
- 為什麼?為什麼?Java處理排序後的陣列比沒有排序的快?想過沒有?Java排序陣列
- SQL SERVER中什麼情況會導致索引查詢變成索引掃描SQLServer索引
- Python 為什麼說 Eval 要慎用?使用 Eval 帶來的潛在風險?什麼情況下使用 Eval?Python
- Oracle 12.2中的索引統計被呼叫情況Oracle索引
- 【TUNE_ORACLE】你建立的索引為什麼不工作了?(一)Oracle索引
- 為什麼分散式限流會出現不均衡的情況?分散式
- 爬蟲代理為什麼會出現超時的情況?爬蟲
- Oracle 索引的使用情況檢視Oracle索引
- 監控Oracle索引的使用情況Oracle索引
- 在沒有開啟審計的情況下定位Oracle錯誤的登入Oracle
- MySQL Connectors為什麼沒有javaMySqlJava