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");mysql创建表数据类型
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年的某⼀年
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论