Mysql支持数值型、文本型和日期时间型三大数据类型。
数值型是描述定量数据的数据类型,包括整数型数据类型和浮点型数据类型。
整数型数据类型包括INTEGER、SMALLINT、TINYINT、MEDIUMINT和BIGINT五种长度不同的类型。
数据类型 | 说明 | 字节数 |
---|---|---|
INTEGER | 普通大小的整数 | 4 |
SMALLINT | 较小的整数 | 2 |
TINYINT | 很小的整数 | 1 |
MEDIUMINT | 中等大小的整数 | 3 |
BIGINT | 大整数 | 8 |
根据占用字节数可以求出每一种数据类型的取值范围,例如:
TINYINT需要1字节(即8bits),那么TINYINT无符号数的取值的最大值为28-1=255;有符号数的最大值为27-1=127。
数据类型 | 无符号数取值范围 | 有符号数取值范围 |
---|---|---|
INTEGER | -231 ~ 231-1 | 0 ~ 232-1 |
SMALLINT | -215 ~ 215-1 | 0 ~ 216-1 |
TINYINT | -128 ~ 127 | 0 ~ 255 |
MEDIUMINT | -223 ~ 223-1 | 0 ~ 224-1 |
BIGINT | -263 ~ 263-1 | 0 ~ 264-1 |
Mysql中浮点型数据类型包括浮点型(单精度FLOAT、双精度DOUBLE)和定点型(DECIMAL)。
此类数据可以用(M,N)来表示,其中M称为精度,表示总位数;N称为标度,表示小数的位数。
例如:
字符型数据可以用来存储字符串、图片和声音的二进制数据。
MYsql中的字符型数据有CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT、ENUM、SET和二进制形式文本数据等。
文本类型可以保存非二进制字符串。当保存或查询文本类型的值时,不删除尾部空格。
类型 | 长度 |
---|---|
TINYTEXT | 255 |
TEXT | 255 |
MEDIUMTEXT | 16777215 |
LONGTEXT | 4GB |
枚举字符串(ENUM)是一个字符串对象,语法格式如下:<字段名> ENUM('值 1', '值2', ..., '值n')
ENUM的特点如下:
SET是一个字符串对象,语法格式如下:<字段名> SET('值 1', '值2', ..., '值n')
SET的特点如下:
二进制数据类型用于存储图像、有格式的文本(Word、Excel等)、音频等数据。
数据类型 | 说明 | 长度 |
---|---|---|
BIT(M) | 位字段类型 | M |
BINARY(M) | 固定长度的二进制字符串 | M |
VARBINARY(M) | 可变长度的二进制字符串 | M+1 |
TINYBLOB(M) | 非常小的BLOB | 28-1 |
BLOB(M) | 小的BLOB | 216-1 |
MEDIUMBLOB(M) | 中等大小的BLOB | 224-1 |
LONGBLOB(M) | 非常大的BLOB | 231-1 |
Mysql中的日期和时间数据包括YEAR、TIME、DATE、DATETIME和TIMESTAMP。
数据类型 | 取值范围 | 长度 | 格式 |
---|---|---|---|
YEAR | 1901~2155 | 1 | YYYY-MM-DD |
TIME | -838:59:59~838:59:59 | 2 | HH:MM:SS |
DATE | 1000-01-01~9999-12-3 | 3 | YYYY |
DATETIME | 1000-01-01 00:00:00~9999-12-3 23:59:59 | 8 | YYYY-MM-DD HH:MM:SS |
TIMESTAMP | 1980-01-01 00:00:01 UTC~2040-01-19 03:14:07 UTC | 4 |
运算符 | 说明 | 例子 | 结果 |
---|---|---|---|
+ | 加 | SELECT 1+1 | 2 |
- | 减 | SELECT 1-1 | 0 |
* | 乘 | SELECT 2*1 | 2 |
/ | 除 | SELECT 5/2 | 2 |
%,MOD | 取余 | SELECT 5%2 | 1 |
运算符 | 说明 | 例子 | 结果 |
---|---|---|---|
= | 等于 | SELECT 1=2 | 0 |
<=> | 安全等于 | SELECT 1<=>2 | 0 |
<>, != | 不等于 | SELECT 2<>1 | 1 |
<= | 小于等于 | SELECT 1<=2 | 1 |
>= | 大于等于 | SELECT 1>=2 | 0 |
> | 大于 | SELECT 1>2 | 0 |
< | 小于 | SELECT 1<2 | 1 |
IS NULL | 是否为空 | SELECT IS NULL | 1 |
IS NOT NULL | 是否不为空 | SELECT ‘aaa’ IS NOT NULL | 1 |
BETWEEN AND | 是否在两个值之间 | SELECT 2 BETWEEN 1 AND 3 | 1 |
运算符 | 说明 | 例子 | 结果 |
---|---|---|---|
NOT,! | 非 | SELECT NOT 1 | 0 |
AND,&& | 与 | SELECT 1< AND 0 | 0 |
OR, | 或 | SELECT 1 OR 0 | 1 |
XOR | 异或 | SELECT 1 XOR 1 | 0 |
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://wang11.blog.csdn.net/article/details/126069004
内容来源于网络,如有侵权,请联系作者删除!