MySQL_003_基础_数值类型

声明:本文转载自 维C果糖的博客,只是原文的一部分。mysql版本5.5.28,可视化工具 Navicat

前言

mysql数值类型可以分为两大类:正数型、小数型。

整数型

SQL根据所占磁盘空间大小,整数型可 细分为五类:

名称解释mysql默认显示长度无符号数值范围有符号数值范围
tinyint迷你,使用1个字节存储数据4-128(-2^7) ~ 127(2^7-1)0 ~ 255
smallint小,使用2个字节存储数据6-32,768(-2^15) ~ 32,767(2^15-1)0 ~ 65535
mediumint中,使用3个字节存储数据9
int标准,使用4个字节存储数据11-2,147,483,648 ~ 2,147,483,647
bigint大,使用8个字节存储数据20-9,223,372,036,854,775,808 ~ 9223372036854775807
use study_mysql;
CREATE table my_int(
  int_tiny TINYINT,
  int_small SMALLINT,
  int_normal int ,
  int_big BIGINT,
  int_medium MEDIUMINT
)
备注:
1. 常用的tinyint(1) 可以作为布尔值存储 0:false,1:true

2. int(11)虽然显示的是11位,但是真的存不下手机号。会产生数值溢出的问题。可以改用bigint / varchar(11) 存储。

3. SQL中数值类型默认是有符号位的,即分正负。如果需要使用无符号的数据,这就需要咱们自己对数据类型进行声明啦,即在声明数据类型时,追加unsigned关键字。或者在Navicat数据可视化工具里面直接勾选“无符号”。

小数型

在 SQL 中,将小数型细分为浮点型和定点型两种,其中:
- 浮点型:小数点浮动,精度有限,容易丢失精度;
- 定点型:小数点固定,精度固定,不会丢失精度。

第 1 种:浮点型

浮点型数据是一种精度型数据,因为超出指定范围之后,其会丢失精度,自动进行四舍五入操作。理论上,浮点型分为两种精度:
- float:单精度,占用 4 个字节存储数据,精度范围大概为 7 位左右;
- double:双精度,占用 8 个字节存储数据,精度范围大概为 15 位左右。

浮点型的使用方式:如果直接用float,则表示没有小数部分;如果用float(M,D),其中M代表总长度,D代表小数部分长度,M-D则为整数部分长度。

第 2 种:定点型

decimal 绝对的保证整数部分不会被四舍五入。
用法与浮点型类似
原文链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值