mysql大數據下查詢,char和varchar對於效率的區別(未建立索引情況下)


  • 問題描述:

兩個表的僅有以一個字段屬性不同,一個為char另外一個為varchar,(長度設定是40,同時插入相同長度內容)試問再大數據量下,哪個表的查詢效率高(在不建立索引的情況下);

 

  • 原來的理解:

原來的理解是,char的效率更高,這個理解是基於char是固定長度,空間分配好查詢速度就快(這個后面就尷尬咯)

 

  • 實際測試:

表結構如下

寫了一個定時任務批量插入數據。。。。

后來插入到240w,寫個定時任務跑爽爽的

在50w數據量下測試的結果:

到240w后的差距就更明顯。

 

在沒有索引的情況下,mysql查詢走的是主鍵創建的索引,通過主鍵查詢,數據量大效率的瓶頸是磁盤的io,

當數據量大的時候,char是固定長度,占用的磁盤空間較大,查詢效率就降低;

在不同的場景下,瓶頸是不同的;

 

 相關鏈接:varchar與char查詢速度的比較

 

 

=======================================

Deadline:2019.3.10

Title:spring bean的初始化,@bean注入的小問題

Reward:攢足三次購買東芝移動硬盤1T(1次)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM