91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫知識筆記

發布時間:2020-08-09 14:14:06 來源:網絡 閱讀:449 作者:netpeak 欄目:數據庫

1、強制使用decimal存儲小數,不使用float、double,防止精度損失,如果存儲的數據范圍超過 decimal 的范圍,建議將數據拆成整數和小數分開存儲。這也是阿里的強制開發規范。

2、高效分頁

limit m,n其實質就是先執行limit m+n,然后從第m行取n行,這樣當limit翻頁越往后翻m越大,性能越低。比如

select * from A limit 100000,10,這種sql語句的性能是很差的,建議改成下面的版本:

selec id,name,age from A where id >=(select id from A limit 100000,1) limit 10

3、InnoDB的行鎖加上死鎖檢測機制會導致數據庫CPU短時間內被占滿,導致整庫幾乎無法響應。 

4、對數據分組的總結:

1 分組函數只能出現在選擇列表、having、order by子句中(不能出現在where中) 。

2 如果在select語句中同時包含有where,group by, having, order by 那么它們的順序是where,group by, having, order by 。

3 在選擇列中如果有列、表達式和分組函數,那么這些列和表達式必須有一個出現在group by 子句中,否則就會出錯。

如SELECT deptno, AVG(sal), MAX(sal) FROM emp GROUP by deptno HAVING AVG(sal) < 2000;

這里deptno就一定要出現在group by 中。

5、sql排序默認是升序(從小到大),直接order by,降序是desc。

6、子查詢比關聯查詢效率高。

MySQL

mysql的innodb的底層存儲模型是B+樹,它使用主鍵作為聚簇索引,使用插入的數據作為葉子節點,通過主鍵可以很快找到葉子節點,從而快速獲取記錄。主鍵最好要自增。因為自增主鍵可以讓插入的數據按主鍵順序插入到底層的B+樹的葉子節點中,由于是按序的,這種插入幾乎不需要去移動已有的其它數據,所以插入效率很高。如果主鍵不是自增的,那么每次主鍵的值近似隨機,這時候就有可能需要移動大量數據來保證B+樹的特性,增加了不必要的開銷。

對于mysql的join,它用的是Nested Loop Join算法,也就是通過前一個表查詢的結果集去后一個表中查詢,比如前一個表的結果集是100條數據,后一個表有10W數據,那么就需要在100*10W的數據集合中去過濾得到最終的結果集。因此,盡量用小結果集的表去和大表做join,同時在join的字段上建立索引,如果建不了索引,就需要設置足夠大的join buffer size

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

四川省| 武城县| 武定县| 遵义县| 合肥市| 南木林县| 肇东市| 都江堰市| 曲周县| 观塘区| 新宁县| 洞口县| 洪洞县| 顺义区| 保康县| 宣武区| 万安县| 宜川县| 区。| 渑池县| 吉隆县| 阜城县| 湘潭县| 武鸣县| 沙坪坝区| 当雄县| 兴安县| 平南县| 孟津县| 长岛县| 东乌| 梧州市| 宁安市| 通化县| 馆陶县| 昌吉市| 德格县| 永清县| 惠州市| 肇东市| 凯里市|