MySQL数据类型enum 枚举类型

作者:彭世瑜 时间:2024-01-14 22:23:52 

例如:

性别 gender 男 女 保密

基本语法:

enum(数据值 1,数据值 2...);
  • 数据值列表在 255 个以内,使用 1 个字节来存储

  • 数据值列表超过 255,但是小于 65535,使用 2 个字节来存储

-- Enum(0=>'男', 1=>'女', 2=>'保密')
create table my_enum(
   gender enum('男', '女', '保密')
)

mysql> desc my_enum;
+--------+----------------------------+------+-----+---------+-------+
| Field  | Type                       | Null | Key | Default | Extra |
+--------+----------------------------+------+-----+---------+-------+
| gender | enum('男','女','保密')     | YES  |     | NULL    |       |
+--------+----------------------------+------+-----+---------+-------+

-- 插入规范数据
insert into my_enum (gender) values ('男');
insert into my_enum (gender) values ('女');

mysql> select * from my_enum;
+--------+
| gender |
+--------+
| 男     |
| 女     |
+--------+

枚举可以规范数据

枚举类型存储的不是真正的字符串,而是存储了下标

-- MySQL 会自动类型转换,+、-、\*、/ 会将数据转换成数值,普通字符串转换为数值 0
select gender + 0 from my_enum;

mysql> select gender + 0 from my_enum;
+------------+
| gender + 0 |
+------------+
|          1 |
|          2 |
+------------+

-- 可以直接插入数值数据
insert into my_enum (gender) values (1);

mysql> select * from my_enum;
+--------+
| gender |
+--------+
| 男     |
| 女     |
| 男     |
+--------+

枚举的意义:

  • 规范数据本身,限定只能插入规定的数据项

  • 节省存储空间

来源:https://blog.51cto.com/u_13567403/5308442

标签:MySQL数据,enum,枚举,类型
0
投稿

猜你喜欢

  • 提高MySQL数据库查询效率的几个技巧

    2009-01-19 12:52:00
  • 如何由Sybase向SQL Server移植数据库

    2009-01-20 15:56:00
  • 深入了解Python 方法之类方法 & 静态方法

    2023-07-27 04:15:37
  • 解决golang 关于全局变量的坑

    2024-02-17 05:46:02
  • 浅谈pandas用groupby后对层级索引levels的处理方法

    2022-10-15 01:43:37
  • python Pandas如何对数据集随机抽样

    2023-10-02 08:28:13
  • javascript入门基础之私有变量

    2024-05-11 09:43:31
  • Python字符串、列表、元组、字典、集合的补充实例详解

    2022-06-24 14:50:56
  • 使用Python生成随机密码的示例分享

    2023-05-23 11:32:10
  • Python扩展内置类型详解

    2023-03-19 17:23:36
  • 解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题

    2024-04-16 09:26:21
  • 将Pytorch模型从CPU转换成GPU的实现方法

    2023-07-07 00:11:00
  • Python实现排序方法常见的四种

    2022-02-18 08:06:15
  • Python实现带图形界面的炸金花游戏

    2021-06-21 15:41:56
  • echarts动态获取Django数据的实现示例

    2022-08-26 02:29:06
  • SQL语句解析执行的过程及原理

    2024-01-26 21:11:55
  • Python selenium 父子、兄弟、相邻节点定位方式详解

    2023-07-03 06:19:09
  • Python unittest框架操作实例解析

    2023-06-12 14:14:57
  • php生成shtml类用法实例

    2023-11-15 21:46:23
  • oracle group by语句实例测试

    2024-01-26 16:11:40
  • asp之家 网络编程 m.aspxhome.com