MySql 学习笔记

转至:推荐微信公号(IT牧场)   MySql学习笔记  https://mp.weixin.qq.com/s/kR44s2A5bSYpzqwQeC2c0g

1.case..when 用法:

https://www.cnblogs.com/chenduzizhong/p/9590741.html

2.MySql 关键字

书写顺序: select -> from -> where -> group by -> having -> order by  limit [offset,] (rows)

注意: limit m,n 代表(m,m+n],左开右闭,如(0,10],就是110

执行顺序:from -> where -> group by -> having -> select -> order by  limit 

           或  from →join →on →where →group by→having→select→order by→limit     

          from:需要从哪个数据表检索数据
          join:联合多表查询返回记录时,并生成一张临时表
          on:在生成临时表时使用的条件
          where:过滤表中数据的条件
          group by:如何将上面过滤出的数据分组
          having:对上面已经分组的数据进行过滤的条件
         select:查看结果集中的哪个列,或列的计算结果
         order by :按照什么样的顺序来查看返回的数据
          limit:限制查询结果返回的数量

 注意:

       1)from后面的表关联,解析是自右向左解析的(最后面的那个表为驱动表,尽量将数据量小的表放在后面来进行关联,即用小表去匹配大表)。

      2)where子句的执行顺序不同数据库顺序不同:Oracle自右向左,mysql则是自左向右,但同样的思想:把能筛选出小量数据的条件先执行,同样用小表去匹配大表。

      3)having语句,很耗资源。

      4)select语句中,需指明要查询的字段,少用*号。

     5)order by,很耗资源,其执行顺序为自左向右

3.Mysql 存储过程

  存储过程:数据库 SQL 语言层面的代码封装与重用

  可参考:https://www.runoob.com/w3cnote/mysql-stored-procedure.html

4.Mysql 触发器

  触发器:一张表发生了某件事(插入、删除、更新操作),然后自动触发了预先编写好的若干条SQL语句的执行

  可参考:https://blog.csdn.net/tonysong111073/article/details/99286229

                https://www.cnblogs.com/geaozhang/p/6819648.html

      https://www.cnblogs.com/fps2tao/p/10400936.html

5.MySql 索引

   索引:大大提高了查询速度,同时却会降低更新表的速度,建立索引会占用磁盘空间的索引文件

   可参考:https://www.cnblogs.com/Aiapple/p/5693239.html

                  https://www.runoob.com/mysql/mysql-index.html

posted @ 2020-03-12 16:27  Jaine  阅读(156)  评论(0)    收藏  举报