不是每個欄位都是可以加索引的,比如文字太長的,mysql innodb最大長度是767位元組,不支援全文索引。myisam才支援全文索引
經常使用explain檢視sql執行計畫
單錶查詢
explain select * from test_user where user_name ="哈哈2017-02-15 14:39:09" 沒加索引之前 231毫秒
create index index_name on test_user(user_name) 加索引之後 2毫秒
兩表查詢
explain select * from test_user user join test_teacher tracher on user.foreign_key=tracher.id limit 10,10; 106毫秒
create index index_foreign_key on test_user(foreign_key) 加索引之後 1毫秒
放棄索引的幾種情況
1.like 全模糊的時候 like "%key%"
2.使用mysql函式 concat(加索引字段,"abc")
3.where對欄位進行null值判斷 key is null
4.where使用了or key=1 or key1=2
5.where使用不等號 key!=1 key<>1
6.where使用not in key not in (1,2,3)
7.全表掃瞄快於索引掃瞄
8.查詢超過資料的5分之一索引會失效 變成全表掃瞄
例如有索引key(a,b,c)
³where a=xx and b=xx and c=*** 此語句可以用到索引
³where b=xx and a=xx and c=*** 同上,順序沒有關係,同樣能用到索引
³where a=xx and b=xx 可以用到索引
³where a=xx and c=xx 可以用到索引(這個以前一直理解錯了)
³where b=xx and c=xx 用不到索引
³where b=xx 用不到索引
³where c=xx 用不到索引
git使用(持續更新)
做專案時如果不進行版本管理,經常會遇到 修改了,過段時間卻找不到修改的地方。怎麼辦,開始用git來進行管理。在本機上安裝好git之後,建立本地的repository還是比較容易的,在專案所在目錄下,git bash中敲入git init,這樣就初始化了git。具體的一些指令說明如下 1 本地提交 g...
WPF相關文章索引 持續更新中
這個部落格的建立初衷就是為了分享和總結我在wpf方面的所學,此後還會繼續保持更新的。wpf介面設計技巧系列 wpf介面設計技巧 1 不規則窗體 指南 wpf介面設計技巧 2 自定義漂亮的按鈕樣式 wpf介面設計技巧 3 實現不規則動畫按鈕 wpf介面設計技巧 4 自定義列表項樣式 wpf介面設計技巧...
HBase使用優化(持續更新)
這裡只準備介紹我實際操作中遇到的一些使用優化或解決辦法,想大致了解hbase優化的同學可以參考我之前轉載的幾篇博文。1.第乙個我想說的是hbase的寫操作,api層面上的優化 比如批量寫,關閉wal之類的 我這裡就不囉嗦了,我想要說的是rowkey的設計,這個問題一般會跟io的大小息息相關,io越大...