文章詳情頁
MySQL中的enum類型有什么優點?
瀏覽:240日期:2022-06-15 15:00:16
問題描述
剛開始用MYSQL,一直沒注意到這個類型,它有什么優點?或者說如果存儲內容都是短字符串的話,它跟varchar有何區別?
問題解答
回答1:例如下面兩個字段:
name varchar(50) , sex enum(’male’ , ’female’ , ’both’ , ’unknow’)
name 字段可以插入任意字符串。
sex 字段只允許插入 male , female , both , unknow 中的其中之一,不在范圍內的值會報錯。
enum 相比較 varchar 就更加規范些,你在程序中限定也一樣可以做到。
對于性能比較的話,就得等待高手來解答了.....
回答2:Enum 好處讓值取在幾個值范圍內
回答3:查詢string和enum速度上差不多,用到enum或set就是邏輯上的需要吧。。。
回答4:enum在底層的存儲方式是以整型進行存儲的比如這樣的字段sex enum(’male’ , ’female’ , ’both’ , ’unknow’)在查詢時where sex=’male’和where sex=1是等效的
相關文章:
1. python - 求一個在def中可以實現調用本def滿足特定條件continue效果的方法(標題說不太清楚,請見題內描述)2. $fields = $values = [];這條代碼一直定義不了,一直報錯,老師的源碼也是被報錯的,執行不了,請問該怎么解決這個問題3. mysql - SQL操作時間的函數?4. java - mybatis怎么實現在數據庫中有就修改,沒有就添加5. 正則表達式 - python pandas的sep參數問題6. javascript - 用表單提交兩個時間段請求后臺返回對應數據時出現的一些問題!7. docker內創建jenkins訪問另一個容器下的服務器問題8. angular.js - angularjs的自定義過濾器如何給文字加顏色?9. MYSQL新建用戶設置可以遠程訪問的問題10. javascript - c#如何向js傳值
排行榜
![$fields = $values = [];這條代碼一直定義不了,一直報錯,老師的源碼也是被報錯的,執行不了,請問該怎么解決這個問題](http://www.piao2010.com/attached/image/news/202205/093622cb60.png)