MySQL:字符串字段加索引


1. 使用方式

1.1 全字段加索引

  給整個字段加索引,索引存儲整個字段的值。

  數據量較小時,查詢成本高,准確度高;

  數據量較大時,比較耗費空間;

1.2 前綴索引

  MySQL支持前綴索引,可以定義字符串的前面的一部分字節作為索引。

  查詢成本低,比較節省空間;

  使用前綴索引查詢時,每次遇到符號查詢條件的記錄都要回表判斷一次,增加查詢語句讀數據的次數,也就是增加掃描行數;

  使用前綴索引時無法使用覆蓋索引對查詢的性能優化;

2. 使用技巧

  沒有絕對的技巧,使用時要根據具體情況具體分析。以下技巧僅供參考:

2.1 倒序存儲

  存儲學號時,比如201306070110。前四個字節表示入學年份,區分度較低,此時可以采用倒序存儲,然后再使用前綴索引的方式提高查詢效率;

2.2 hash字段

  存儲郵箱時,比如 streamXXX@email.com,此時正序和倒序的區分度都比較低,這時就可以考慮hash字段的方式,不過這樣就要添加一個字段存儲hash后的值。

 


免責聲明!

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



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