MySQL02: 常用数据类型

搞数据分析肯定是要学习下数据库的;

主要的数据类型,包括字符串、数值、日期时间

alt

数值型

INT就是整数类型,根据允许的数值大小分为以下类型(由小到大),这样做的目的是节约空间

INT类型范围(有符号)范围(有符号)
TINYINT(-27, -27-1)(0,2^8-1)
SMALLINT(-215, -215-1)(0,2^16-1)
MEDIUMINT(-224, -224-1)(0,2^24-1)
INT(-232, -232-1)(0,2^32-1)
BIGINT(-264, -264-1)(0,2^64-1)

FLOAT就是小数,根据精度不同(小数点后位数不同),可以分为一下几类

FLOAT类型
FLOAT单精度
DOUBLE双精度
DECIMAL(M,D)保留几位小数

注:

  1. DECIMAL(3,1)表示总为有 3 位数字,小数点后1位,所以范围是[-99.9, 99.9]
  2. 默认数值是有符号的,即有正有负,如果限定数据为非负,需要加上UNSIGNED关键字

字符串

  • 二进制字符串

二进制字符串主要用于存储二进制数据,包括图片、音频、视频等。

Type长度
TINYBLOB≤ 2^8-1
BLOB≤ 2^16-1
MEDIUMBLOB≤ 2^24-1
LONGBLOB≤ 2^32-1
  • 普通字符串
Type长度说明
CHAR(n=1)[1,2^8-1]定长
VARCHAR(n)[1,2^8-1]不定长
TINYTEXT≤ 2^8-1不定长
TEXT≤ 2^16-1不定长
MEDIUMTEXT≤ 2^24-1不定长
LONGTEXT≤ 2^32-1不定长
ENUM≤ 2^16-1单选或不选
SET2^6多选

CHAR可以设置长度,默认是 1,当实际输入<设定的位数时,在输入字符右边增加空格,以达到定长的目的。如果当实际输入>设定的位数时,则截断超出部分。

VARCHAR必须设置长度,如果当实际输入>设定的位数时,则截断超出部分;当实际输入<设定的位数时,则显示实际长度。

ENUM从一个集合中选择一个字符串或者为 NULL,比如性别栏可以设置成仅允许["Male", "Female", "Prefer not to say"]

SET可以给定的集合中选择多个字符串,比如 SET("足球", "篮球", "羽毛起", "乒乓球")

日期时间

Type范围格式
DATE1000-01-01 到 9999-12-31YYYY-MM-DD(年月日)
TIME-838:59:59 到 838:59:59HH::MM::SS(时分秒)
YEAR1901到2155YYYY(年)
DATETIME1000-01-01 00:00:00到 9999-12-31 23:59:59YYYY-MM-DD HH::MM::SS(年月日时分秒)
TIMESTAMP1970-01-01 00:00:01 到 2038-01-19 03:14:07YYYY-MM-DD HH::MM::SS(年月日时分秒)

时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。

本文由 mdnice 多平台发布

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值