mysql中的list数据类型_mysql 常用数据类型

mysql 常用数据类型

整型

(1) tinyint

一个字节  有符号(-128 ~ 127 ) 无符号(unsigned) ( 0 ~ 255 ) 小整数值

(2) int

四个字节  有符号(-21亿 ~ 21亿 左右 ) 无符号(unsigned) ( 0 ~ 42亿) 大整数值

create table t1(id int , age tinyint );

insert into t1 values(2200000000,1) error

insert into t1 values(2100000000,1)

insert into t1 values(2100000000,128)  error

insert into t1 values(2100000000,127)

浮点数

(1) float ( 255 , 30 ) !!! 单精度

(2) double ( 255 , 30 ) !!! 双精度

(3) decimal( 65 , 30 )  金钱类型,使用字符串对的形式保留小数

"""默认存在四舍五入"""

create table t2(f1 float(5,2) , f2 double(5,2) , f3 decimal(5,2));

insert into t2 values(1.77777777777777777777777777,1.77777777777777777777777777,1.77777777777777777777777777);

"""float 默认小数保留5位,double小数位截取16位,decimal(10,0) 默认保留整数,存在四舍五入"""

create table t3(f1 float,f2 double ,f3 decimal);

insert into t3 values(1.77777777777777777777777777,1.77777777777777777777777777,1.77777777777777777777777777);

create table t4(f1 float(5,2));

insert into t4 values(12.34567889) # 12.35

insert into t4 values(123.34567889) # 123.35

insert into t4 values(1234.34567889) error

字符串

(1)  char 字符长度 255 个

(2)  varchar 字节长度 21845 个 (总字节数不超过 65535 )

(3)  text 文本类型,论文,小说等

char(10)     定长: 固定开辟11个字符长度的空间  开辟速度较快

varchar(10)  变长: 最多开辟11个字符长度的空间  开辟速度较慢

create table t5(c char(11), v varchar(11) , t text);

insert into t5 values('1111',"酸辣粉加上队列副经理开","sdfsdf234");

insert into t5 values('1111',"酸辣粉加上队列副经理2开","sdfsdf234"); error

# concat 拼接任意长度的字符串

elect concat(c,":",v,":",t) from t5;

枚举 和 集合

(1)枚举

enum  枚举: 从列出来的数据当中选一个(如:性别)

(2) 集合

set 集合: 从列表中选多个(自动去重) (如: 爱好)

create table t6(

id int,

name varchar(10),

money float(6,3),

sex enum("男性","女性","禽兽","人妖","雌雄同体","半兽人","阿凡达"),

hobby set("吃肉","抽烟","喝酒","喝假酒")

);

# 正常

insert into t6(id , name ,money , sex , hobby) values(1,"克拉伊买买提",56.7891,"半兽人","喝假酒,抽烟");

# 自动去重

insert into t6(id , name ,money , sex , hobby) values(1,"克拉伊买买提",56.7891,"半兽人","喝假酒,抽烟,抽烟,抽烟,抽烟");

时间日期

(1)  年月日

date YYYY-MM-DD  年月日 (纪念日,节假日)

(2)  时分秒

time HH:MM:SS   时分秒 (体育赛事,新闻联播)

(3)  年份值

year  YYYY     年份值 (历史)

(4)  年月日 时分秒

datetime  YYYY-MM-DD HH:MM:SS  年月日 时分秒(用户登录时间)

create table t1(d date , t time , y year , dt datetime);

insert into t1 values("2020-08-25","08:25:30","2020","2020-08-25 08:25:30")

insert into t1 values(now(),now(),now(),now())

timestamp YYYYMMDDHHMMSS(时间戳) 自动更新时间(不需要手动,系统自动更新时间) 数据上一次的修改时间

create table t2(dt datetime , ts timestamp);

insert into t2 values(null,null);

insert into t2 values(20200825082530,20200825082530);

insert into t2 values(20200825082530,20380825082530); error 不能超过2038年的某一年


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部