今天遇見乙個聯合索引引發的插入資料異常的問題,找了好長時間
問題是這樣的:
插入字段 crm_id 引數為12333
結果在執行插入的使用crm_id的值變成了12333-12 (ps:crmlc_time的值為12).
問題出在哪呢?
unique key crm_id(crm_id,crlc_time)
看到沒聯合索引,印象了插入的值
修改方案:
alter
table f_credit_right drop index crm_id;//刪除聯合索引
//建立普通索引
alter
table
`f_credit_right`
add index crm_id (`crm_id`);
alter
table
`f_credit_right`
add index crmlc_time (`crmlc_time`);
建立結果為:
由於這張表需要頻繁的查詢,所以不能刪除,就選擇了將他們分開做普通索引
mysql的聯合索引 mysql聯合索引詳解
聯合索引又叫復合索引。對於復合索引 mysql從左到右的使用索引中的字段,乙個查詢可以只使用索引中的一部份,但只能是最左側部分。例如索引是key index a,b,c 可以支援a a,b a,b,c 3種組合進行查詢,但不支援 b,c進行查詢 當最左側欄位是常量引用時,索引就十分有效。兩個或更多個...
乙個索引引發的問題
215 上了乙個大表的組合索引,引發了查詢sql的執行計畫混亂,最終cpu充到100 業務系統掛掉,庫也幾乎宕掉。1,為什麼建了索引後,oracle執行計畫會亂掉,而且選擇了乙個最慢的執行計畫?dba答覆 表關聯!關聯表越多,oracle選擇執行計畫出錯的概率變大!如何防止此類事件 上索引之前,先固...
索引以及聯合索引的使用
一.索引的使用 1.主鍵 預設是自帶索引的 和外來鍵 以及一些可以跟其他表關聯的字段 2.where子句中經常出現的字段 3.索引應該建在小字段上,大的資料字段 bit,image,text 不適用 二.聯合索引 1.查詢條件中出現聯合索引第一列或全部則能利用聯合索引 2.只要聯合條件全部在 3.查...