MySQL数据类型_数值类型

摘要:

本文主要介绍MySQL数据类型_数值类型


1. 整数类型

字段mysql自带字节数
TINYINTYES1
SMALLINT2
MEDIUMINTYES3
INT或者INTEGER4
BGIINTYES8
show warnings; # 查看警告

# 创建无符号整数字段, 默认是有符号的
create table test2(
    tinyint_test tinyint unsigned,
    int_test int unsigned
);
mysql> create table test4(
    -> id1 int zerofill,
    -> id2 int(6) zerofill)
    -> ;

# 如果不够显示字段,自动补充0,由于是以0开始,所以默认会是unsigned的

2. 浮点数类型

类型字节
Float4
Double8

也有精度和标度的概念,超过精度会四舍五入

错误示例

create table test5(float_test float(5,2))

insert into test5 values(1111.2)

# 最终存入的会是999.99,因为已经超出整数位了(三位)

3. 定点数类型

在MySQL内部以字符串存储,精度比浮点数更高。

DEC(M, D)

# M: 精度,一共的位数
# D: 标度,小数点后的位数

默认情况下,M=10,D=0,不能存储小数。

4. 位类型

多位二进制数,范围是1-64二进制数,默认是一位

字节是1 - 8

create table test6(id, bit(位数))

# id是一个bit类型的整型,表示一个二进制数,括号里面跟位数,默认是1

select bin(id), oct(id), hex(id) from test6;

# 将二进制数id,以二进制,八进制,十六进制的数字字符串的形式来显示。

5. 日期和时间类型

日期和时间类型字节最小值最大值
DATE4
DATETIME81000-01-01 00:00:009999-12-31 23:59:59
TIMESTAMP4197001010800012038年的某个时刻
TIME3-835:59:59838:59:59
YEAR119012155
YEAR <=69 会以20开头,>=70会以19开头

6. 建议

1. 浮点数

用户身高,体重,薪水等。

2. 定点数

存储货币等高精度要求的数据。

3. 位类型

注意使用相应函数bin oct hex去查看相应的数据。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值