【MySQL】近2万字,138张图解,我终于把mysql总结完整了,建议收藏(14)


ENUM 类型ENUM 我们在 Java 中经常会用到 , 它表示的是枚举类型 。 它的范围需要在创建表时显示指定 , 对 1 - 255 的枚举需要 1 个字节存储;对于 255 - 65535 的枚举需要 2 个字节存储 。 ENUM 会忽略大小写 , 在存储时都会转换为大写 。
SET 类型SET 类型和 ENUM 类型有两处不同

  • 存储方式
SET 对于每 0 - 8 个成员 , 分别占用 1 个字节 , 最大到 64, 占用 8 个字节
  • Set 和 ENUM 除了存储之外 , 最主要的区别在于 Set 类型一次可以选取多个成员 , 而 ENUM 则只能选一个 。
MySQL 运算符MySQL 中有多种运算符 , 下面对 MySQL 运算符进行分类
  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符
下面那我们对各个运算符进行介绍
算术运算符MySQL 支持的算术运算符包括加、减、乘、除和取余 , 这类运算符的使用频率比较高
下面是运算符的分类
运算符作用+加法-减法*乘法/ DIV除法 , 返回商% MOD除法 , 返回余数
下面简单描述了这些运算符的使用方法
  • + 用于获得一个或多个值的和
  • - 用于从一个值减去另一个值
  • * 用于两数相乘 , 得到两个或多个值的乘积
  • / 用一个值除以另一个值得到商
  • % 用于一个值除以另一个值得到余数
在除法和取余需要注意一点 , 如果除数是 0, 将是非法除数 , 返回结果为 NULL 。
比较运算符熟悉了运算符 , 下面来聊一聊比较运算符 , 使用 SELECT 语句进行查询时 , MySQL 允许用户对表达式的两侧的操作数进行比较 , 比较结果为真 , 返回 1 ,比较结果为假 , 返回 0, 比较结果不确定返回 NULL 。 下面是所有的比较运算符
运算符描述=等于<> 或者是 !=不等于<=>NULL 安全的等于 , 也就是 NULL-safe<小于<=小于等于>大于>=大于等于BETWEEN在指定范围内IS NULL是否为 NULLIS NOT NULL是否为 NULLIN存在于指定集合LIKE通配符匹配REGEXP 或 RLIKE正则表达式匹配
比较运算符可以用来比较数字、字符串或者表达式 。 数字作为浮点数进行比较 , 字符串以不区分大小写的方式进行比较 。
  • = 号运算符 , 用于比较运算符两侧的操作数是否相等 , 如果相等则返回 1 ,如果不相等则返回 0, 下面是具体的示例 , NULL 不能用于比较 , 会直接返回 NULL

  • <> 号用于表示不等于 , 和 = 号相反 , 示例如下

  • <=> NULL-safe 的等于运算符 , 与 = 号最大的区别在于可以比较 NULL 值

  • < 号运算符 , 当左侧操作数小于右侧操作数时 , 返回值为 1 ,否则其返回值为 0 。

  • 和上面同理 , 只不过是满足 <= 的时候返回 1, 否则 > 返回 0 。 这里我有个疑问 , 为什么
select 'a' <= 'b';  /* 返回 1 */

/*而*/

select 'a' >= 'b'; /* 返回 0 呢*/