mysql中int,bigint,smallint 和 tinyint的区别详细介绍

mysql中int,bigint,smallint 和 tinyint的区别详细介绍,第1张

主要的区别是占用空间和表示范围

tinyint 占用1字节

表示非负: 0-->255

无符号表示:-128-->127

举例表示人的年龄就可以用:age tinyint;

smallint 占用2字节

表示非负:0-->2^16-1 既 0到65535

无符号表示:-2^15-->2^15-1

举例表示乌龟的年龄:agewg smallint;

int 占用4字节

表示非负 0-->2^32-1 既 零到四十二亿九千万

无符号表示:-2^31-->2^31-1

举例表示恐龙化石年龄:agekl int;

bigint 占用8字节

表示非负 0-->2^64-1 这已经是天文数字了,能表示 18后面17个零那么大的数字

无符号表示:-2^63-->2^63-1

bigint比较占用空间,一般都不用。

举例表示宇宙年龄:ageyz bigint;

完全手打亲!

create table 学生表(学号 char(10) primary key,姓名 char(10) not null,性别 char(2) check(性别 in('男','女')),系 varchar(20) check(系 in('信息系','计算机科学系','数学系','管理系','中文系','外语系','法学系')),年龄 int check(年龄 between 0 and 100))

在Mysql中计算年龄:

SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)), '%Y')+0 AS age FROM 表名


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7340509.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存