堅持,每get乙個新知識點就寫篇部落格出來,不要只做乙個coder。
--導致查詢緩慢的原因
1、資料量過大
2、表設計不合理
3、sql語句寫得不好
4、沒有合理使用索引
--解決方法
少使用select* 進行全表查詢
盡量遵循三正規化,較少冗餘
盡量使用大寫(oracle 預設大寫)
儘量減少子查詢 使用關聯查詢(left join,right join)
減少使用in或者not in ,使用exists,not exists或者關聯查詢語句替代
or 的查詢盡量用 union或者union all 代替
最重要也是最有效:建立索引
建立索引 :什麼時候給子段新增索引?
1.表中該子段資料量龐大
2.經常被檢索,經常出現where子句中的子段
3.經常被dml(資料操控語言delete insert)操作的語句不建議新增索引
SQL 語句優化 OR 語句優化案例
從上海來到溫州,看了前幾天監控的sql語句和資料變化,發現有一條語句的io次數很大,達到了150萬次io,而兩個表的資料也就不到20萬,為何有如此多的io次數,下面是執行語句 select ws.nodeid,wi.laststepid,wi.curstepid from workflowinfo ...
sql語句優化!
1.不要使用in操作符,這樣資料庫會進行全表掃瞄,推薦方案 在業務密集的sql當中盡量不採用in操作符 a 改為 a 4.is null 或is not null操作 判斷字段是否為空 5.及 操作符 大於或小於操作符 大於或小於操作符一般情況下是不用調整的,因為它有索引就會採用索引查詢,但有的情況...
SQL語句優化
explain sql 反饋sql語句執行資訊 1 優化 select min id as nid,uid pmzongfen updatetime picid gg from qd mouldu qd sell limit 1 select uid pmzongfen updatetime pic...