Mysql資料總結

  1.關於連接

    掘金小冊,主要介紹連接的原理

https://juejin.im/book/5bffcbc9f265da614b11b731/section/5c061b0cf265da612577e0f4

 

 left join 的易錯點  :過濾左表用  where    過濾右表用 on    否則會導致數據丟失

 http://mp.weixin.qq.com/s?__biz=MzI4Njc5NjM1NQ==&mid=2247490520&idx=2&sn=d58bef5206c2f7fc928f750f62ba5139&chksm=ebd624f4dca1ade2346eb6f9afac5e5e7c84564e66673bd15a12e97e795c8f04e03bf2bca7df&scene=0&xtrack=1#rd

 

2.關於索引

 

   爲什麼索引要用B+樹呢?

   1.二叉查找樹: 每個非葉子節點都有最多有2個子節點,並且左子節點小於父節點,右子節點大於父節點

    相當於二分查找,一般情況下O(logN)

   缺點:如果插入的節點是有序的,那麼會退化成鏈表(右斜樹)時間複雜度O(n)

  2.平衡二叉樹(AVL樹) :它的左右兩個子樹的高度差的絕對值不超過1,並且左右兩個子樹都是一棵平衡二叉樹。==》解決二叉查找樹成爲右斜樹  的缺點, 這樣可以讓查詢速度比較穩定,查詢中遍歷節點控制在O(logN)範圍內

   缺點:數據量大的時候,樹的高度變大,每個節點對應一個磁盤塊,數據量大的時候,也會和二叉樹一樣,會導致樹的高度變高,增加了io次數,顯然用這種結構存儲數據也是不可取的。

 

3. B-樹:而B-樹節點中可以放多個元素,主要是爲了降低樹的高度

 

4.B+樹

   https://mp.weixin.qq.com/s/wiqfcVrsLgLvLbsTU-qSag

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章