sql查詢優化實用篇

2021-08-13 11:34:27 字數 830 閱讀 1349

一 查詢優化優化率

總:業務設計》資料庫設計》查詢優化

產品裝置:高併發cpu要求高,記憶體要求高,資料量大:磁碟空間大

解析:1業務設計:產品經理設計,開發人員優化

-->業務處理應盡量少連線資料庫

如:有乙個listids 可以迴圈乙個乙個查 也可以用 in listids 一次查全

-->業務處理複雜,沒必要非要一條sql語句執行完,可以分條查詢在合併

如:多個巢狀查詢,可先查一部分 拿著結果再去查詢剩餘一部分 有時候反而效率更高

2.資料庫設計:

-->分庫:常查詢乙個庫,常寫入更改另一種庫

-->分表:資訊量比較大不用所有列都放在乙個表中

如:使用者資訊錶可拆分為,常用的查詢表[uesr_id,account,password,name],user_identitycard[user_id,id_card,id_img ....]

-->索引:

1常查詢字段  2最好為數字 3可聯合索引

二sql語句優化

1.索引查詢列 放在無索引查詢條件前面

2.索引一定要在範圍查詢前面,索引碰到範圍查詢失效

3.索引碰到函式處理失效

4.只查詢有用的列可減少查詢時間、

三原理解析

mysql解析流程:server接收client sql請求-->分解分析-->查詢優化器-->執行計畫-->儲存引擎-->結果返回

執行計畫是決定sql語句最終消耗資源的主要因素,我們查詢的優化就是優化分析然後有更好的執行計畫

四查詢解析

explain:: sql語句; 會返回執行計畫,可用於分析,sql語句是否合理優化

SQL查詢語句優化的實用方法

查詢語句的優化是sql效率優化的乙個方式,可以通過優化sql語句來盡量使用已有的索引,避免全表掃瞄,從而提高查詢效率。最近在對專案中的一些sql進行優化,總結整理了一些方法。1 在表中建立索引,優先考慮where group by使用到的字段。2 盡量避免使用select 返回無用的字段會降低查詢效...

HADOOP優化 實用篇

1.設定合理塊大小 dfs.block.size 如果塊過小,產生的元資料大,會增加namenode的壓力 如果塊過大可能會隨時磁碟空間 2.將中間結果分布多個磁碟上,提高寫入速度 mapred.local.dir 配置mapred site.xml mapred.local.dir name va...

PostgreSQL實用查詢SQL

參考 postgresql實用查詢sql 檢視 資料庫 www.2cto.com select from pg database 檢視表空間 select from pg tablespace 檢視語言 select from pg language 檢視角色使用者 select from pg u...