MySQL数据类型

1.整数类型

*MySQL主要提供的整数类型有:tinyint、smallint、mediumint、int、bigint。

在这里插入图片描述
例子:

create table emp
(
	id int(11),
	name varchar(25),
	deptId int(11),
	salary float
);

**id字段的数据类型为int(11),注意后面的数字11,这表示的是该数据类型指定的显示宽度,指定能够显示的
数值中数字的个数。
例如:year int(4),该声明指明,在year字段中的数据一般只显示4位数字的宽度。

显示的宽度和数据类型的取值范围是无关的。显示宽度只是指明MySQL最大可能显示的数字个数,数值的
位数小于指定的宽度时会由空格填充;如果插入了大于显示宽度的值,只要该值不超过该类型的取值范围,
数值依然可以插入,而且能够显示出来。

例如:向year字段插入一个数值19999,当使用select查询该列的时候,MySQL显示的将是完整的带有5位
数字的19999,而不是4位数字的值。**

可以在定义表结构时指定整数类型的显示宽度,如果不指定,系统为每一个类型指定默认的宽度值,如:
在这里插入图片描述
提示:显示宽度只是用于显示,并不能限制取值范围和占用空间,如:int(3)会占用4个字节的存储空间,并且允
许的最大值也不会是999,而是int所允许的最大值。

2. 浮点数类型和定点数类型

MySQL中使用浮点数和定点数来表示小数。浮点类型有两种:单精度float和双精度double。定点类型只有一种:
decimal。浮点类型和定点类型都可以用(M,N)来表示,其中M表示精度,表示总共的位数;N表示标度,是表示小
数的位数。

在这里插入图片描述
例:创建表tmp2,其中x、y、z数据类型依次为float(5,1),double(5,1)和decimal(5,1),
向表中插入数据5.12、5.15和5.123,如下:

在这里插入图片描述

3. 时间和日期类型

在这里插入图片描述
1.Year类型
Year类型表示年,可以使用各种格式指定year的值
以4位字符串或者4位数字格式表示year,取值范围’1901’~‘2155’,输入格式为‘YYYY’或者YYYY,例如:
输入’2010’或2010
以2位字符串格式表示的year,范围’00‘-’99‘。’00‘-’69‘和’70‘-’99‘范围的值分别被转换成2000-2069和1970-1999
范围的year的值。
以2位数字表示的year,范围1-99。1-69和70-99范围的值分别被转换为2001-2069和1970-1999范围的year值。

2.TIME类型
TIME类型用在只需要时间信息的值,在插入数据时要注意,因为可以采用非严格语法,支持

在这里插入图片描述
3.DATE类型
DATE类型用在仅需要日期值时,没有时间部分,在插入遵循 YYYY-MM-DD、 YY-MM-DD、 YYYYMMDD、 YYMMDD都可以,并且允许非严格语法,比如插入98.11.31 98/11/31 98@11@31,任何标点符合都可以做日期、时间的分割符。
使用current_date或者now(),可以插入当前系统日期。

4.DATATIME类型
DATATIME类型用在需要同时包括日期和时间信息的值,格式为‘YYYY-MM-DD HH:MM:SS’、‘YYYYMMDDHHMMSS’、 ‘YY-MM-DD HH:MM:SS’、‘YYMMDDHHMMSS’、 YYYYMMDDHHMMSS、 YYMMDDHHMMSS。

5.TIMESTAMP类型
TIMESTAMP的显示格式与DATETIME相同,但TIMESTAMP的取值范围小于DATETIME的取值范围,为‘1970-01-01 00:00:01’ UTC~‘2038-01-19 03:14:07’ UTC,其中UTC为世界标准时间,在插入数据时,要保证在合法的取值范围内。

3.字符类型

在这里插入图片描述

4.算法运算符

在这里插入图片描述
演示:
1.

-- 创建表yun
CREATE TABLE yun
(
 num int
);

如图:
在这里插入图片描述
2.

-- 向字段num插入数据64
INSERT INTO yun VALUE(64);

如图:
在这里插入图片描述
3.

-- 对num值进行加法和减法运算
SELECT num, num+10, num-3+5, num+5-3, num+36.5 FROM yun;

如图:
在这里插入图片描述
4.

-- 对num进行乘法,除法,求余等运算
SELECT num, num*2, num/2,num/3,num%3 FROM yun;

如图:
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值