您好,登錄后才能下訂單哦!
1.在where條件中避免雙百分號“%col%” 在MySQL的SQL查詢條件中使用“%col%”無法使用索引而進行全表掃描影響查詢效率 2.避免函數出現在where條件中 例:where year(‘activedate’)= ‘2018’在條件中使用函數即使該字段有索引,執行計劃也不會使用索引而進行全表掃描 3.避免數據類型不一致 執行查詢操作的時候,在where條件中使用與字段類型相同的值,盡量避免讓MySQL執行轉化操作, 例:activedate < STR_TO_DATE('2018-08-08', '%Y-%m-%d')不要寫成activedate< '2018-08-08' 4.讀取適當的記錄及需要的字段,避免select * from tab_name 5.分組統計時可以禁止排序 MySQL默認情況下對所有group by的字段進行排序,如果查詢包括group by 又不需要排序操作可以禁止order by null 6.減少使用子查詢或者不使用子查詢,可以用join代替 7.創建表的時候選擇合適的字段屬性,盡量讓字段not null,這樣數據庫在執行查詢的時候不用比較null值 8.在執行DML(update、insert、delete)操作的時候使用事務維護數據的完整性 begin; DML語句; commit; 9.鎖定表,當進行批量操作的時候使用事務會鎖定數據庫,這時如果有大量的用戶訪問會造成延遲,可以用鎖定表來代替事務 lock table write select col1,col2 from tab_name..... update ...;unlocktables; 10.合理使用索引 索引是提高數據庫性能的有效方法,但創建索引要合理,避免建在大量重復值的字段上。在where、join、order by等字段上合理創建索引來提高性能。 以上個人總結供參考,歡迎指正!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。