• MySQL复习


    1.简述触发器、函数、视图、存储过程?

    视图、触发器、事务、存储过程、函数、流程控制皆是在库下面建立

    触发器:在满足对某张表数据的增、删、改的情况下,自动触发的功能称之为触发器

    为何要用触发器: 触发器专门针对我们对某一张表数据增insert、删delete、改update的行为,这类行为一旦执行就会触发触发器的执行,即自动运行另外一段sql代码

    函数:mysql内置的函数只能在sql语句中使用,mysql> select date_format(sub_time,'%Y-%m'),count(id) from blog group by date_format(sub_time,'%Y-%m');

    什么是视图:通过查询得到一张虚拟表,保存下来,下次可直接使用

    为什么要用视图如果要频繁使用一张虚拟表,可以不用重复查询

    如何用视图:create view teacher2course as select * from teacher inner join course on teacher.tid = course.teacher_id;

    删除视图:drop view teacher2course;

    强调:在硬盘中,视图只有表结构文件(.frm),没有表数据文件(.idb); 其在后台对应的是一条sql语句;视图通常是用于查询,尽量不要修改视图中的数据

     

    #mysql中函数是不能单独使用的,必须放在sql语句中使用;但存储过程是可以单独使用的

    存储过程:存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中,通过调用它的名字可以执行其内部的一堆sql

    2.select执行顺序

    -- DQL select
    1 SELECT 列名,别名,表达式,聚合函数,函数
    2 FROM 表名,子查询
    3 WHERE 条件
    4 GROUP BY 分组列
    5 HAVING 分组之后的条件(聚合函数,列别名)
    6 ORDER BY 排序列 (DESC,ASC)
    7 LIMIT 分页(过滤条数,显示条数)
    执行顺序:
    1 FROM
    2 WHERE 行过滤
    3 SELECT 列投影
    4 GROUP BY 分组
    5 HAVING 分组后条件过滤
    6 ORDER BY 排序
    7 LIMIT 分页

  • 相关阅读:
    海康威视web插件安装后还是不能看视频问题
    超详细解释 react,flux,redux 的概念与关系
    vue3和react虚拟DOM的diff算法区别
    leetcode 78. 子集 js 实现
    js 实现扁平数组转为树形结构数组及树形结构数组转为扁平数组
    vite 为什么比 webpack 快?
    实现一个简单版 Vue2 双向数据绑定
    leetcode 415. 字符串相加 js 实现
    transform rotate实现环形进度条
    leetcode 258. 各位相加 js 实现
  • 原文地址:https://www.cnblogs.com/dxbin/p/10053936.html
Copyright © 2020-2023  润新知