美文网首页
MySQL注意事项

MySQL注意事项

作者: MonsFinn | 来源:发表于2020-05-05 16:54 被阅读0次

一、关于Null

1. 存在null值的比较

如果null参与比较运算,则结果会被视为false,即会跳过null的比较运算,如>=,<=,<>,>,<,not in,in,!=,在where中使用比较运算符时会直接忽略存在null值的行,可能造成可用数据的缺失。
因此在数据清洗时最好根据需求填充或删除null值。

2. 分组键中存在null值

如果分组键中存在null值,则分组后会将所有null值行聚合为一个字段值为null的组。

3. null参与算术运算

null参与任何算术运算均返回null,类似于numpy的nan。同理,聚合函数对含有null的数据进行运算的时候一般也返回null,除了count(),它会返回非null数值个数。
解决null值运算的方式有在聚合函数中嵌套ifnullisnull函数

二、SQL执行顺序

from —> join —> on —> where —> group by —> having —> select —> distinct —> order by —> limit

  • where的操作对象是from或join后生成的临时表,故其操作字段可以是全部字段
  • group by的操作对象是where后生成的临时表,故可操作字段是全部字段
  • having的操作对象仅可以是groupby后接的字段或者任何聚合函数

三、其他

  1. select与group by
    select后聚合函数一定是仅能返回多个聚合函数加一个分组列,其他行无法返回,谨记,故求聚合数据如最大值的其他相关行数据时必须嵌套,若没有分组,则仅返回一个值,不能返回聚合值同行的其他字段。
  2. 外部联结条件失效
    左连接时,使用 table_a left outer join table_b and table_a =xx时,后面的and条件无效,同理在右联结时,对右表的筛选也无效。
  3. 自联结的作用
  • 通过自联结能够比较列与列之间的层次或逻辑关系
  • 使得跨行比较转换为同行比较

相关文章

  • 数据库

    • MySQL 索引使用的注意事项 MySQL 索引使用的注意事项 索引不会包含有NULL值的列使用短索引...

  • CentoOS 7.7.1908 安装 MySql8.0.18

    CentoOS 7.7.1908 安装 MySql8.0.18 注意事项 1、必须删除系统里面的默认MySql数据...

  • 5.2MySQL创建高性能索引考察点

    MySQL索引的基础和类型延伸:MySQL索引的创建原则延伸:MySQL索引的注意事项 索引的基础索引类似于书籍的...

  • Java面试要点-数据存储-精简答案

    MySQL 索引使用的注意事项 索引的目的在于提高查询效率。可以类比字典,如果要查“mysql”这个单词,我们肯定...

  • 连接MySQL系列之(一)Excel和VBA连接MySQL

    一、VBA连接MySql前的准备 注意事项:如果没有引用这两个工程,就会出现以下报错。 二、安装Mysql ODB...

  • Swoft MySQL

    注意事项 要使用MySQL前提条件必须安装了MySQL,由于目前采用的是Docker的使用,所以提前需要使用Doc...

  • Mysql面试题

    文章目录 MySQL 索引使用有哪些注意事项呢?索引哪些情况会失效索引不适合哪些场景 MySQL 遇到过死锁问题吗...

  • MySQL数据库导入导出大数据量注意事项

    MySQL数据库导入导出大数据量注意事项 MySQL导出导入小数据量时可以使用Navicate等客户端工具,但是当...

  • Mysql注意事项

    注意事项不要听信你看到的关于优化的“绝对真理”,包括本文所讨论的内容,而应该是在实际的业务场景下通过测试来验证你关...

  • MySQL注意事项

    一、关于Null 1. 存在null值的比较 如果null参与比较运算,则结果会被视为false,即会跳过null...

网友评论

      本文标题:MySQL注意事项

      本文链接:https://www.haomeiwen.com/subject/atgmghtx.html