MySQL数字类型学习笔记

  • 2019 年 10 月 28 日
  • 筆記

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/u014427391/article/details/102644742

数字类型

最近在看《MySQL技术内幕:SQL编程》并做了笔记,所以本博客是一篇笔记类型博客,分享出来方便自己复习,也可以帮助他人

  • 整型

类型

占用空间

最小值(SIGNED)

最大值(SIGNED)

最小值(UNSIGNED)

最大值(UNSIGNED)

TINYINT

1

-128

127

0

255

SMALLINT

2

-32768

32767

0

65535

MEDIUMINT

3

-8388608

8388607

0

16777215

INT

4

-2147483648

2147483647

0

4294967295

BIGINT

8

-9223372036854775808

9223372036854775808

0

18446744073709551615

  • 位类型 位类型,关键字是bit,位类型用于存储位字段的值,BIT(M),M表示允许存储位数的值,M的范围为1到64,占用的空间为(M+7)/8字节

注意:如果分配的值长度小于M位,就在数值左边用0填充

# 创建一个表  CREATE TABLE t(a BIT(4));  # 写入数据  INSERT INTO t SELECT b'1000';  # 查询,在新版显示字符串,不能直接查  SELECT * FROM t;  # 位类型的,可以用HEX函数,查询出来是数字8(16进制)  SELECT HEX(a) FROM t;
  • 浮点型(非精确类型) MySQL支持两种浮点类型:单精度的FLOAT类型和双精度的DOUBLE类型
  • 高精度类型 DECIMAL和NUMERIC是MySQL进度比较高的类型,语法都是DECIMAL(M,N)、NUMERIC(M,N),M表示精度,也就是整个数值的位数,,两种类型的最大位数M都为65,N表示标度,也就是整个数值小数点后的位数