MYSQL - 数据类型和运算符

89 阅读1分钟

MYSQL三大类数据类型

  1. 数值类型
  2. 日期/时间类型
  3. 字符串类型

一般可变长度的数据类型,所占的存储空间长度实际上是所存储的内容的长度。

数值类型

  • 整数类型:TINYINTSMALLINTMEDIUMINTINTBIGINT
  • 浮点小数数据类型FLOATDOUBLE
  • 定点小数DECIMAL

image.png

在对精度要求比较高的时候,比如货币、科学数据,使用DECIMAL的类型较好。

日期/时间类型

  • YEAR
  • TIME
  • DATE
  • DATETIME
  • TIMESTAMP

image.png

字符串类型

  字符串类型分为文本字符串二进制字符串

  字符串类型除了存储字符串数据之外,还可以存储图片、声音的二进制数据。文本字符串可以进行区分或者不区分大小写的串比较,还可以进行模式匹配查找。

  • CHAR
  • VARCHAR
  • BINARY
  • VARBINARY
  • BLOB
  • TEXT
  • ENUM
  • SET

image.png

ENUM类型的使用方式

字段名 + ENUM + ('值', '值', '值', '值')...

字段名 ENUM ('值1', '值2', '值3',...,'值n')

ENUM值依照索引顺序排列,空值排在非空之前,NULL排在所有值之前;

Example:

1. 创建一个表,表中有一个enum字段
CREATE TABLE test_enum
(
  enum_value ENUM('a', 'b', 'c')
);

2. 插入enum的值
INSERT INTO test_enum
VALUES ('a'), ('b'), ('a'), (NULL);

3. 查看enum的值以及其中值的索引
SELECT enum_value, enum_value+0 FROM test_enum;

image.png

SET类型的使用方式

image.png

image.png