比如用戶登錄支持用系結的郵箱登錄,不是每個用戶都系結了郵箱。那么郵箱應該允許為null然后建立唯一索引好呢,還是設定默認空串,建立普通索引好呢?
另外還想問下唯一索引的范圍里是否不包括欄位為null的資料?
uj5u.com熱心網友回復:
允許為null的話,你在建立唯一索引沒有意義,按照你的描述,郵箱登錄用得較少,那么先統計一下你們系統最常用的是哪種登錄方式,在最多執行的登錄sql上在加索引,具體索引型別視業務而定uj5u.com熱心網友回復:
如果不需要利用唯一索引來保證唯一性約束,那么就創建普通索引。普通索引在定位資料的時候只比唯一索引多了一個節點指標的遍歷,兩者的查詢性能基本可以看成是相等的。
但是唯一索引會使得MySQL的change buffer失效,也就失去一項優化性能的特性。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/57380.html
標籤:MySQL
上一篇:求大佬給個菲律賓省市sql腳本
