Mysql数据类型
整数类型
TINYINT | 很小的整数 | 1字节 | -128~127 | 0~255 |
SMALLINT | 小的整数 | 2字节 | -32768~32767(万级) | 0~65535 |
MEDIUMINT | 中等大小的整数 | 3字节 | -8388608~8388607(百万级) | 0~16777215 |
INT(INTEGER) | 普通大小的整数 | 4字节 | -2147483648~2147483647(十亿级) | 0~4294967295 |
BIGINT | 大整数 | 8字节 | -9223372036854775808~9223372036854775808(太大啦) | 0~18446744073709551615 |
tips
id INT(10);
这里10是指在id字段中的数据一般只显示10位**数字**的宽度.
显示的宽度和数据类型的取值范围是无关的。
显示的宽度只是指明Mysql最大可能显示的数字个数,数值的位数小于指定的宽度时会由空格填充;
如果插入了大于显示宽度的值,只要该值不超过该类型 **整数** 的取值范围,数值依然可以插入,而且能够显示出来。
浮点数据类型和定点数据类型
FlOAT | 单精度浮点数 | 4字节 |
DOUBLE | 双精度浮点数 | 8字节 |
DECIMAL (M,D) DEC | 压缩的"严格"定点数 | M+2字节 |
tips
无论是顶点还是浮点类型,如果用户指定的精度超出精度范围,则会四舍五入进行处理。
DECIMAL在mysql中以字符串形式存储。
日期与时间
YEAR | YYYY | 1901-2155 | 1字节 |
TIME | HH:MM:SS | -838:59:59~838:59:59 | 3字节 |
DATE | YYYY-MM--DD | 1000-01-01~9999-12-3 | 3字节 |
DATETIME | YYYY-MM-DD HH:MM:SS | 1000-01-01 00:00:00~9999-12-31 23:59:59 | 8字节 |
TIMESTAMP | YYYY-MM-DD HH:MM:SS | 1970-01-01 00:00:01 UTC ~ 2038-01-19 03:14:07 UTC | 4字节 |
字符串类型
CHAR(M) | 固定长度非二进制字符串 | M字节,1<=M<=255 |
VARCHAR(M) | 变长非二进制字符串 | L+1字节,在此 L<=M 和 1<= M <=255 |
TINYTEXT | 非常小的非二进制字符串 | L+1字节,在此 L < 2^8 |
TEXT | 小的非二进制字符串 | L+2字节,在此 L < 2^16 |
MEDIUMTEXT | 中等大小的非二进制字符串 | L+3字节,在此 L < 2^24 |
LONGTEXT | 大的非二进制字符串 | L+4字节,在此 L < 2^32 |
ENUM | 枚举类型,只能有一个枚举字符值 | 1或者2字符,取决于枚举值的数目(最大值65535) |
SET | 一个集合,字符串对象可以有零个或者多个SET成员 | 1,2,3,4或者8个字节,取决于接成员的数量(最多64个成员) |
二进制类型
BIT(M) | 位字段类型 | 大约(M+7)/8个字节 |
BINARY(M) | 固定长度二进制字符串 | M个字节 |
VARBINARY(M) | 可变长度的二进制字符串 | M+1个字节 |
TINYBLOG(M) | 非常小的BLOG | L+1字节,在此L<2^8 |
BLOG(M) | 小BLOG | L+2字节,在此L<2^16 |
MEDIUBLOB(M) | 中等大小的BLOG | L+3字节,在此L<2^24 |
LONGBLOG(M) | 非常大的BLOG | L+4字节,在此L<2^32 |
常见运算符
= | 等于 |
<=> | 安全的等于 |
<> (!=) | 不等于 |
<= | 小于等于 |
>= | 大于等于 |
> | 大于 |
IS NULL | 判断一个值是否为NULL |
IS NOT NULL | 判断一个值是否不为NULL |
LEAST | 在有两个或多个参数时,返回最小值 |
GREATEST | 在有两个或者多个参数时,返回最大值 |
BETWEEN AND | 判断一个值是否落在两个值之间 |
ISNULL | 与IS NULL作用相同 |
IN | 判断一个值是IN列表中的任意一个值 |
NOT IN | 判断一个不是IN列表中的任意一个值 |
LIKE | 通配符匹配 |
REGEXP | 正则表达式匹配 |
逻辑运算符
NOT 或 ! | 逻辑非 |
AND 或 && | 逻辑与 |
OR 或 | 逻辑或 |
XOR | 逻辑 异或 |