Oracle建立索引常用的規則
2、資料量超過300的表應該有索引;
3、經常與其他表進行連線的表,在連線欄位上應該建立索引;
4、經常出現在Where子句中的欄位,特別是大表的欄位,應該建立索引;
5、索引應該建在選擇性高的欄位上;
6、索引應該建在小欄位上,對於大的文字欄位甚至超長欄位,不要建索引;
7、複合索引的建立需要進行仔細分析;儘量考慮用單欄位索引代替:
A、正確選擇複合索引中的主列欄位,一般是選擇性較好的欄位;
B、複合索引的幾個欄位是否經常同時以AND方式出現在Where子句中?單欄位查詢是否極少甚至沒有?
如果是,則可以建立複合索引;否則考慮單欄位索引;
C、如果複合索引中包含的欄位經常單獨出現在Where子句中,則分解為多個單欄位索引;
D、如果複合索引所包含的欄位超過3個,那麼仔細考慮其必要性,考慮減少複合的欄位;
E、如果既有單欄位索引,又有這幾個欄位上的複合索引,一般可以刪除複合索引;
8、頻繁進行資料操作的表,不要建立太多的索引;
9、刪除無用的索引,避免對執行計劃造成負面影響
相關推薦
Oracle建立索引常用的規則
1、表的主鍵、外來鍵必須有索引; 2、資料量超過300的表應該有索引; 3、經常與其他表進行連線的表,在連線欄位上應該建立索引; 4、經常出現在Where子句中的欄位,特別是大表的欄位,應該建立索引; 5、索引應該建在選擇性高的欄位上; 6、索引應該建在小欄位上,對於大的文
建立索引常用的規則
1、表的主鍵、外來鍵必須有索引; 2、資料量超過300的表應該有索引; 3、經常與其他表進行連線的表,在連線欄位上應該建立索引; 4、經常出現在Where子句中的欄位,特別是大表的欄位,應該建立索引; 5、索引應該建在選擇性高的欄位上; 6、索引應該建在小欄位上,對於大的文字欄位甚至超長欄位,不要建索引; 7
Oracle 建立索引及利用索引的SQL語句優化
資料庫索引: 索引有單列索引 複合索引之說 如何某表的某個欄位有主鍵約束和唯一性約束,則Oracle 則會自動在相應的約束列上建議唯一索引。資料庫索引主要進行提高訪問速度。 建設原則: 1、索引應該經常建在Where 子句經常用到的列上。如果某個大表經常使用某個欄位進行
Oracle 建立索引表空間語法
Oracle 的索引可分為5種,它們包括唯一索引、組合索引、反向鍵索引、點陣圖索引和基於函式的索引。 1、建立索引的標準語法 以下為引用內容: CREATE INDEX 索引名 ON 表名 (列名)TABLESPACE 表空間名; 例如: 以下為引用內容: CRE
資料庫建立索引的規則
資料庫適合建立索引的規則如下: 表的主鍵,外來鍵應該建立索引; 資料量比較大的表應該建立索引; 經常需要和其他表建立連線,在連線欄位應該建立索引; 經常出現在where子句中的欄位,應該建立索引。 資料庫不適合建立索引的情況: 比較大的文字欄位或者長度較長的欄位,不
ORACLE 數據庫需要創建索引的規則
存儲 選擇 處理 oracl 避免 創建 規則 索引 連接 1、表的主鍵、外鍵必須有索引; 2、數據量超過300的表應該有索引; 3、經常與其他表進行連接的表,在連接字段上應該建立索引; 4、經常出現在Where子句中的字段,特別是大表的字段,應該建立索引; 5、索引應該建
解決Oracle建立空間索引報錯ORA-29855,ORA-13249,ORA-29400,ORA-01426
問題描述 公司這邊用了Oracle Spatial來儲存GIS資料資訊,今天在某表上建立空間索引時報了下面的錯: 此處舉例說明: 假如有表TEST,其中有一列SHAPE儲存維度資訊。 CREATE INDEX IDX_TEST_SHAPE ON TEST(SHAPE) INDEX
oracle 11g 最常用的基本管理命令,包括建立使用者、表空間、許可權等
Oracle 11g最常用的基本管理命令,包括建立使用者、表空間,許可權分配等 1、啟動oracle資料庫: 從root切換到oracle使用者進入:su - oracle 進入sqlplus環境,nolog引數表示不登入:sqlplus /nolog 以管理員模式登入:sqlplu
oracle資料庫建立索引以及簡單優化sql語句
Oracle 建立索引及SQL優化 資料庫索引: 索引有單列索引 複合索引之說 如何某表的某個欄位有主鍵約束和唯一性約束,則Oracle 則會自動在相應的約束列上建議唯一索引。資料庫索引主要進行提高訪問速度。 建設原則: 1、索引應該經常建在Where 子句經常用到的列上。如
教你建立Oracle複合索引(精)
什麼是複合索引? 複合索引顧名思義,區別於單列索引,是由兩個或多個列一起構成的索引。其在B樹上的資料結構是什麼樣?如下圖,是一個包含兩列的複合索引。 如果你觀察仔細,還會發現它的葉子節點是ASC遞增排序的。現根據第一個值排序,然後根據第二個值排序。查的時候也一樣,先查第一個值,在查
ElasticSearch學習(一)------建立索引庫,設定索引規則
一、建立索引庫,並且設定預設分詞器為 IK curl -XPUT http://localhost:9200/myindex -d ' { "settings" : { "index" : { "max_result_window" : 10000
oracle建立使用索引 查詢索引狀態
SQL> conn tudou/111;//插入測試資料SQL> insert into temp1 values('z壯','23');SQL> insert into temp1 values('z','25');SQL> insert into t
oracle資料庫建立索引的原則
資料庫建立索引的原則 1,確定針對該表的操作是大量的查詢操作還是大量的增刪改操作。 2,嘗試建立索引來幫助特定的查詢。檢查自己的sql語句,為那些頻繁在where子句中出現的欄位建立索引。 3,嘗試建立複合索引來進一步提高系統性能。修改複合索引將消耗更長時間,同時,複合索引也佔磁碟空間。 4,對於小型的表,建
ORACLE建立使用者 管理使用者常用語句
一、建立使用者的過程 1、建立使用者 Create user 使用者名稱identified by 密碼; (如果是數字則要加雙引號”<st1:chmetcnvw:st="on" unitname="”" sourcevalue="111111"hasspace="F
oracle 分析慢sql 並建立索引
第一步:explain plan for SELECT * from table //執行計劃(此處的表查詢由於隱私,所以沒拿出來) 第二步:select * from table(dbms_xplan.display)//查詢分析 select * from user_index
mysql資料庫和oracle資料庫建立索引的原則
資料庫建立索引的原則 1,確定針對該表的操作是大量的查詢操作還是大量的增刪改操作。 2,嘗試建立索引來幫助特定的查詢。檢查自己的sql語句,為那些頻繁在where子句中出現的欄位建立索引。 3,嘗試建立複合索引來進一步提高系統性能。修改複合索引將消耗更長時間,同時,複合
資料庫建立索引、資料表建立規則、備用欄位 / 保留欄位 / 預留欄位
資料庫建立索引 資料庫、資料表建立索引的原則 資料庫建立索引的原則 1,確定針對該表的操作是大量的查詢操作還是大量的增刪改操作。 2,嘗試建立索引來幫助特定的查詢。檢查自己的sql語句,為那些頻繁在where子句中出現的欄位建立索引。 3,嘗試建立複合索引來進一步提高系統性能。修改複合
Oracle,create index,如果是大表建立索引,切記加上online引數
轉載:http://blog.csdn.net/robinjwong/article/details/42104831 這幾天在做資料庫的優化,有個2億記錄的表,發現需要新增一個聯合索引,結果就採用普通的create index index_name on table
oracle中新建表 新增備註 新增主鍵 建立索引
例如新建表twf_processversion 1.新建表 create table TWF_PROCESSVERSION ( FLDPROCESSID VARCHAR2(64), FLDID VARCHAR2(32) not null,
Oracle之如何線上建立索引,並且不影響update
我們在用create index inx_1 on t(col1)建立索引時,oralce會lokc會全表,這時如果是生產系統,可能會引起重大事故,所有的dml操作均需要等待. 但有時我們為了建立索引時不影響生產系統的dml執行,可以建立索引時使用online關鍵字,