【MySQL】MySQL学习笔记(五)数据类型和运算符

1 数据类型

  MySQL支持多种数据类型,主要有数值类型、日期/时间类型和字符串类型。

1.1 数值类型

  • 整型数值类型:

表2-1 MySQL中整型数值类型

类型大小范围(有符号)范围(无符号)用途
TINYINT1字节-128 ~ 1270 ~ 255小整数值
SMALLINT2字节-32,768 ~ 32,7670 ~ 65,535大整数值
MEDIUMINT3字节-8,388,608 ~ 8,388,6070 ~ 16,777,215大整数值
INT或INTEGER4字节-2,147,483,648 ~ 2,147,483,6470 ~ 4,294,967,295大整数值
BIGINT8字节-9,233,372,036,854,775,808 ~ 9,223,372,036,854,775,8070 ~ 18,446,744,073,709,551,615极大整数值
  • 浮点数值类型:

表2-2 MySQL中浮点数值类型

类型大小用途
FLOAT4字节单精度浮点数值
DOUBLE8字节双精度浮点数值
DECIMAL(M,D)如果M>D,为M+2否则为D+2小数值

2.2 字符串类型

表2-3 MySQL中字符串类型

类型大小用途
CHAR(M)M字节,0 ~ 255字节定长字符串
VARCHAR(M)L+1字节,0 ~ 65535字节变长字符串
TINYTEXTL+1字节,0 ~ 255字节短文本字符串
TEXTL+2字节,0 ~ 65,535字节长文本数据
MEDIUMTEXTL+3字节,0 ~ 16,777,215字节中等长度文本数据
LONGTEXTL+4字节,0 ~ 4,294,967,295字节极大文本数据
ENUM1或2个字节枚举值,只能有一个枚举字符串值
SET1,2,3,4,8字节一个设置,字符串对象可以有0个或多个SET成员

- ENUM:是一个字符串对象,其值为创建表格是规定中枚举的一列值,使用方法如下:

column_name enum('value',...)
  • SET:同ENUM,区别是可以同时使用多个值

2.3 日期和时间类型

表2-4 MySQL中日期和时间类型

类型大小(Byte)范围格式用途
DATE31000-01-01 ~ 9999-12-31YYYY-MM-DD日期值
TIME3‘-838:59:59’ ~ ‘838:59:59’HH:MM:SS时间值或持续时间
YEAR11901 ~ 2155YYYY年份值
DATETIME81000-01-01 00:00:00 ~ 9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
TIMESTAMP41970-01-01 00:00:00 ~ 2038-1-19 11:14:07YYYYMMDD HHMMSS混合日期和时间值,时间戳

2.4 二进制字符串类型

  • 用于以二进制类型的数据存储图像、音频、视频文件,但是使用性不高

表2-5 MySQL中大对象数据类型

类型大小(字节)用途
BIT(M)(M+7)/8位字段类型
BINARY(M)M固定长度二进制字符串
VARBINARY(M)M+1可变长度二进制字符串
TINYBLOB(M)L+1,0 ~ 255字节不超过255个字符的二进制字符串
BLOB(M)L+2,0 ~ 65,535字节二进制形式的长文本数据
MEDIUMBLOB(M)L+3,0 ~ 16,777,215字节二进制形式的中等长度文本数据
LONGBLOB(M)L+4,0 ~ 4,294,967,295字节二进制形式的极大文本数据

2.5 布尔值——Boolean

  • Boolean数据类型的默认值为False,占用2个字节的存储空间,取值为False或True

3 SQL运算符

3.1 算术运算符

表3-1 MySQL中的算数运算符

运算符作用
+加法运算
-减法运算
*乘法运算
/除法运算
%求余运算

3.2 比较运算符

表3-2 MySQL中的比较运算符

运算符作用
=等于
<=>安全的等于,可以判断NULL值
<>(!=)不等于
<=小于等于
>=大于等于
>大于
<小于
IS NULL判断一个值是否为NULL
IS NOT NULL判断一个值是否不为NULL
LEAST在有两个或多个参数时,返回最小值
GREATEST在有两个或多个参数时,返回最大值
BETWEEN AND判断一个值是否落在两个值之间
ISNULL与IS NULL作用相同
IN判断一个值是IN列表中的任意一个值
NOT IN判断一个值不是IN列表中的任意一个值
LIKE通配符匹配
REGEXP正则表达式匹配

3.3 逻辑运算符

表3-3 MySQL中的逻辑运算符

运算符作用
NOT(!)逻辑非
AND(&&)逻辑与
OR(
XOR逻辑异或

3.4 位操作运算符

表3-4 MySQL中的位运算符

运算符作用
|按位或
&按位与
^按位异或
<<左移
>>右移
~按位反
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值