文章詳情頁
php - 關于mysql數據庫加索引的一些疑問
瀏覽:88日期:2022-06-10 17:10:24
問題描述
關于mysql索引的一些疑問,查閱了很多資料,說的都很模糊,有幾種類型的索引不知道怎么加:1.groupby的索引要怎么加?單獨的加一個索引還是和搜索條件加在一起?2.有LEFT JOIN的查詢索引要怎么加,例如
SELECT a.id,FROM aLEFT JOIN bON a.id = b.aidWHERE a.year = 1 AND b.month = 2GROUP BY b.aORDER BY a DESC
3.像有
SELECT a.id,SUM(a.q+a.w) as day_pv FROM aORDER BY day_pv DESC
這樣的索引要怎么加?
關于索引以及mysql語句優化方面的東西很薄弱。
或者有什么相關的文章或書籍可以推薦的
問題解答
回答1:mysql復合索引與普通索引總結
書籍呢:高性能的mysql(第三版) 索引部分,淘寶那幫翻譯的那部
回答2:建索引主要根據表的查詢條件,原則上找數據可選性高的字段創建索引,如人員id、姓名等,根據這樣的條件可以大大縮小查詢結果集。
回答3:高性能mysql第三版,第五章,專門講解創建高性能的索引,索引主要是針對表的不同查詢字段建立的,為了縮短查詢時間,提高性能
回答4:一般用于排序的字段要加上B-樹索引,where的字段需要加上索引,多條件的需要組合索引,索引順序要與條件符合
上一條:mysql - 現在已經使用CommandArgument取到t_ID的值,現在還想取t_Name的值一起放到cs文件中的sql語句中該怎么做下一條:MySQL 如何 SELECT 除去某一列的所有列?
相關文章:
1. 使用text-shadow可以給圖片加陰影嗎?2. angular.js - angularjs如何傳遞id給另一個視圖 根據id獲取json數據?3. 數據庫無法進入4. java - StringBuffer轉成String,可以不同過tostring,而是通過+“”的方式轉換嗎?5. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?6. java - HashSet<int> 為何有錯誤?7. mysql - 記得以前在哪里看過一個估算時間的網站8. 請問一下各位老鳥 我一直在學習獨孤九賤 現在是在tp5 今天發現 這個系列視頻沒有實戰9. python - linux怎么在每天的凌晨2點執行一次這個log.py文件10. select - mysql怎么搜索一個字符串指定位置之后兩位
排行榜
