mysql常用数据类型
一、数值类型(整型、浮点型)
1、整型
eg:添加一个表格:点击表——添加字段——名称——类型,年龄age是tinyint类型,要在下方勾选无符号,因为年龄都是正数,不存在负数一说,所以不需要符号。
点击保存,然后输入表名,比如t1,就出现了t1
然后双击表里面的null就可以修改值了
如果在年龄里写了一个负数,再按ctrl+s保存,就会报错:
由于范围是0-255,所以当写了256时,也会报错:
** 2、浮点型**
eg:想添加一个money字段,用float类型,可以点击右键,设计表
点击添加字段,名称为money,类型float,长度就是m,小数位数就是n。最后保存就可以了。
然后查看表,money就添加进去了
双击null就可以输入数
eg: 整数3位,小数2位
保存后,就会四舍五入,因为规定的位数是m=5,n=2.
** 二、字符类型**
假如同时指定10个宽度的这样一个范围,只存A这样一个字符,在char中,会开辟10个字符的一个储存空间,来存放一个字符A,剩余的9个字符空着放那,别的字符也不可以使用。所以char比较浪费存储空间,而varchar中 ,他会根据我们存放的字符的长度来开辟存储空间。图中只放了一个A字符,所以只开辟一个字符空间。varchar比较节省空间
性能指的是,char中开辟10个字符,他会10个10个的开辟存储空间,比较节省时间。而在varchar中,需要专门计算一下这个字符的长度是多少,比较浪费时间,性能相对低一点。
第三种text是专门存储文本信息的,不用指定宽度。
** 三、枚举类型**
在单选里,虽然有多个值,但是只能选其中一个值
eg:在表里添加性别和名字:名字的类型是varchar,性别的类型是enum,需要在下方值中添加选项,男,女,未知等。
刷新之后,添加的字段就出来了
点击sex就可以选择男、女、未知等
接着再添加一个爱好hobby,点击t1——选择表——添加字段——输入hobby——值——添加。
保存后,重新打开表,就可以选择爱好了,
** 四、日期时间类型**
1、数据类型
date里面 Y是年,M是月,D是天,即年月日;time里面 H是时,M是分,S是秒 ,即时分秒。
eg:表中的money是充值金额,接着记录一下充值时间,先添加一个时间字段,类型是datetime,
然后刷新表格,再打开,就有了shijian,选择时间就行
** 2、日期时间函数**
这6个函数就是mysql自带的函数
(1)显示当前时间:新建查询,这里是db1表中的时间,输入:SELECT NOW(),下面就是显示的时间。
(2)显示当前日期和时间
(3)返回指定时间
年是2020
月是1月16
秒是0
除此之外,还可以查询在这一天有那些人充值了,可以把时间字段中的一个date信息提取出来
在t2表格里有多个时间信息,那么我想查在2020年1月16号这一天有哪些人充值了
输入 select * from t2 date(shijian)='2020-01-16'; 就可以得到下图信息
** 3、日期时间的运算**
这里的运算符指的是>,<,= ;
中间是一个减号;
INTERVAL就是间隔的意思;
时间间隔单位是一天,或者一个小时,或者几个小时,或者年,分钟,月等为单位进行描述。
eg: 查询一天以内的记录:SELECT * FROM t2 WHERE shijian > (now() - INTERVAL 1 day);
now返回的是当前的时间,INTERVAL就是间隔,减一天的时间就是得到了一天以前的这个时间,查询一天的纪录就表示对于这个一天以前的这个时间点来说,之后的一个时间,所以在这里选择大于就可以了。
难点就是要找时间点,然后分辨是大于,小于,还是等于。
eg:查询一年以前的记录:SELECT * FROM t2 WHERE shijian < (now() - INTERVAL 1 year);
最后,本次总结就是
版权归原作者 小玉玉玉玉呀 所有, 如有侵权,请联系我们删除。