MySQL查詢優化的幾種思路和方法
1、查出瓶頸,哪一部分耗時最多
2、從選擇儲存引擎入手
3、減少正則表達是在sql語句中的使用
4、合理利用快取技術,能提高網頁訪問速度(select @ query-cache-type 查詢快取是否開啟)
5、對耗時較多冗餘的sql語句進行優化
6、合理選擇資料型別來幫助提高查詢執行速度
(1)可以使用短時間型別時不要使用長資料型別(比如int和midlleint)
(2)定長型別(var)比可變長(varchar)效率高,因為可變長型別在底層儲存中容易產生碎片需要維護。所以說,定長型別時間效率快,空間消耗大;變長空間節省,時間效率快,根據時間情況選擇。同時這個跟儲存引擎也有關,InnoDB兩者有區別和BDB兩者區別不大
(3)為資料行選擇合理的儲存引擎
(4)固定長度型別最大為255個位元組
7、把資料列定義為不能為空(NOT NULL),這樣DBMS就不需要檢查NULL屬性
8、在基數少的時候可以考慮使用ENUM型別
相關推薦
MySQL查詢優化的幾種思路和方法
1、查出瓶頸,哪一部分耗時最多 2、從選擇儲存引擎入手 3、減少正則表達是在sql語句中的使用 4、合理利用快取技術,能提高網頁訪問速度(select @ query-cache-type 查詢快取是否開啟) 5、對耗時較多冗餘的sql語句進行優化 6、合理選擇資料型別來幫
進行前端效能優化幾種常用的方法。
程式碼層面:避免使用css表示式,避免使用高階選擇器,通配選擇器。 快取利用:快取Ajax,使用CDN,使用外部js和css檔案以便快取,新增Expires頭,服務端配置Etag,減少DNS查詢等 請求數量:合併樣式和指令碼,使用css圖片精靈,初始首屏之外的圖片資源
關於mysql資料庫的幾種密碼修改方法
方法1: 用SET PASSWORD命令 首先登入MySQL。 格式:mysql> set password for 使用者名稱@localhost = password('新密碼'); 例子:mysql> set password for [email&
mysql模糊查詢的幾種方法
下面介紹mysql中模糊查詢的四種用法: 1,%:表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 將會把u_name為“張三”,“張貓三”、“三腳貓”,
SQL重復記錄查詢的幾種方法
people tro ati from itl ebo del pan select http://www.jb51.net/article/34820.htm \ 1、查找表中多余的重復記錄,重復記錄是根據單個字段(peopleId)來判斷 復制代碼 代碼如下: se
sqlalchemy和flask-sqlalchemy的幾種分頁方法
elf offset 分頁查詢 order == ems div statement ron sqlalchemy中使用query查詢,而flask-sqlalchemy中使用basequery查詢,他們是子類與父類的關系 假設 page_index=1,page_siz
MySQL查詢優化方法總結
系統表 所有 全文檢索 更新 系統 and 插入 upd 一個 1.應盡量避免在 where 子句中使用!=或<>操作符,否則將引擎放棄使用索引而進行全表掃描。 2.對查詢進行優化,應盡量避免全表掃描,首先應考慮在 where 及 order by 涉及頻繁的
最大流問題的幾種模板和思路
核心思路: (首先感謝網路大牛程式碼 附大牛網址:https://blog.csdn.net/huzhengnan/article/details/7766446) 我們首先 採用搜尋的方式 來找到一條從 s-t 的路徑 並且儲存記錄剩
mysql匯出資料庫幾種方法
mysql教程匯出資料庫教程幾種方法 方法一 cmd 到mysql bin目錄下用 如下命令 mysqldump --opt -h192.168.0.156 -uusername -ppassword --skip-lock-tables databasename>database.sql 
SQL重複記錄查詢的幾種方法
1 查詢表中多餘的重複記錄,重複記錄是根據單個欄位1 select * from TB_MAT_BasicData1 2 where MATNR in ( select MATNR from TB_MAT_BasicData1 group by MATNR having count(MATNR)&
鎖效能優化的幾種思路
一、減少執行緒持有鎖的時間 一個方法中,並不是所有的地方都需要同步。所以,只在需要同步的地方,進行加鎖操作。 在程式碼中,可以把同步方法修改為同步程式碼塊,可以減少執行緒持有鎖的時間,從而提高效能。 public synchron
非線性優化-幾種優化方法的比較(1)
我們每個人都會在我們的生活或者工作中遇到各種各樣的最優化問題,比如每個企業和個人都要考慮的一個問題“在一定成本下,如何使利潤最大化”等。最優化方法是一種數學方法,它是研究在給定約束之下如何尋求某些因素(的量),以使某一(或某些)指標達到最優的一些學科的總稱。隨著學習的深入,博
資料庫多表查詢的幾種方法
資料庫奪標查詢的三種方法: 連線查詢(左外連線,右外連線,完全外連線) 1.傳統方式 /*-- 傳統連線方式 --*/ select e.ename,d.dname from dept d , emp e where d.deptno = e.deptno
Linux系統性能優化思路和方法
#影響Linux效能的CPU、記憶體、磁碟、網路等因素分析 1.系統硬體資源:CPU,多核與超執行緒 消耗CPU的業務:動態WEB服務,Mail伺服器 2.記憶體:實體記憶體與swap的取捨,64作業系統 消耗記憶體的業務:記憶體資料庫(Redis、hbase、mon
關於listview的自定義adapter不執行getview()方法的幾種情況和解決辦法
自定義PersonAdapter 繼承自BaseAdapter; PersonAdapter中getView不執行。 佈局使用lsitView 分析: 遇到此種情況 一、檢視adapter繫結的資料 d
oracle ORA 00936 missing expression 報錯的幾種情況和解決方法
ORA-00936: missing expression Cause: A required part of a clause or expression has been omitted. For example, a SELECT statement may have been entered wi
使用UE4開發VR專案_效能優化(三)_思路和方法
本文是《使用UE4開發VR專案-效能優化》的第三篇。希望能和您分享一下在UE4 VR專案優化的基本思路方法和技巧。 前篇請參考這裡: (四)GPU渲染執行緒分析 如果遇到GPU瓶頸最快的驗證方法是改變解析度 降低解析度可以極大提高幀數 如果幀數有大幅度提高 即是GPU瓶頸。如果影響不大
XMLHttpRequest物件的幾種狀態和幾個重要屬性以及常用的方法
XMLHttpRequest的幾種狀態: 0: 物件沒有完成初始化 1: 物件開始傳送請求 2: 物件的請求傳送完成 3: 物件開始讀取伺服器響應 4: 物件讀取伺服器響應結束 1.onreadystatechange 指定XML
Java陣列的幾種常用操作方法(排序演算法及查詢)
陣列的查詢 查詢是在陣列中尋找特定元素的過程。 線性查詢法 線性查詢法將要查詢的關鍵字key與陣列中的元素逐個進行比較。如果匹配成功,線性查詢法則返回與關鍵字匹配的元素在陣列中的下標;如果沒有匹配成功,則返回-1。下面給出線性查詢法的程式: pr
MySQL查詢優化之NLJ和BNL
原文地址:https://dev.mysql.com/doc/refman/5.7/en/nested-loop-joins.html 譯文: 8.2.1.6 巢狀迴圈連線演算法 MySQL使用巢狀迴圈演算法或其變體執行表之間的連線。 巢狀迴圈連線(NLJ)演算法 一個簡單的ne