sql語句的優化

2021-09-11 16:18:50 字數 371 閱讀 1085

1、檢視sql是否涉及多表的聯表或者子查詢,如果有,看是否能進行業務拆分,相關字段冗餘或者合併成臨時表(業務和演算法的優化)

2、涉及鍊錶的查詢,是否能進行分表查詢,單錶查詢之後的結果進行字段整合

3、如果以上兩種都不能操作,非要鍊錶查詢,那麼考慮對相對應的查詢條件做索引。加快查詢速度

4、針對數量大的表進行歷史表分離(如交易流水表)

5、資料庫主從分離,讀寫分離,降低讀寫針對同一表同時的壓力,至於主從同步,mysql有自帶的binlog實現 主從同步

6、explain分析sql語句,檢視執行計畫,分析索引是否用上,分析掃瞄行數等等

7、檢視mysql執行日誌,看看是否有其他方面的問題

8,force index優化sql

SQL 語句優化 OR 語句優化案例

從上海來到溫州,看了前幾天監控的sql語句和資料變化,發現有一條語句的io次數很大,達到了150萬次io,而兩個表的資料也就不到20萬,為何有如此多的io次數,下面是執行語句 select ws.nodeid,wi.laststepid,wi.curstepid from workflowinfo ...

sql語句的優化

1 in 操作符 用in寫出來的sql的優點是比較容易寫及清晰易懂,這比較適合現代軟體開發的風格。但是用in的sql效能總是比較低的,從oracle執行的步驟來分析用in的sql與不用in的sql有以下區別 oracle試圖將其轉換成多個表的連線,如果轉換不成功則先執行in裡面的子查詢,再查詢外層的...

SQL語句的優化

通過使用者反饋獲取存在效能問題的sql 通過慢查日誌獲取存在效能問題的sql 實時獲取存在效能問題的sql mysqldumpslow pt query digest pt query digest explain h 127.0.0.1,u root,p p ssword slow mysql.l...