1、第10讲:揭密标准select语句执行顺序前端与后台的故事SQL语言及其编程第1代是机器语言,由二进制0和1代码指令构成,不同的 CPU 具有不同的指令系统。第3代是高级语言,面向用户的、基本上独立于计算机种类和结构的语言。 第2代是汇编语言,是机器指令的符号化,与机器指令存在着直接的对应关系第4代是非过程化语言,编码时只需说明”做什么”,不需描述算法细节。1.计算机程序设计语言 分为4代 客户端发送一条查询给服务器 将结果返回给客户端 服务器端进行SQL解析、预处理,再由优化器生成对应的执行计划。 服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果。 MySQL根据优化器生成
2、的执行计划,再调用存储引擎的API来执行查询2.SQL语句执行过程1、SELECT DISTINCT 4、GROUP BY 3、WHERE 2、FROM 5、HAVING 6、ORDER BY 3.Select语句语法顺序4.Select语句执行顺序01 05 060708040302 FROM ORDER BY WHERE SELECT(含表达式计算、指定别名) 使用聚集函数进行计算 GROUP BY HAVING DISTINCT 统计“学生信息管理系统”里面各部门教师中、高级职称等级的人数,并将各级职称中人数超出10人的信息提取出来。2、在不同的 DBMS中,关于列的别名的应用情况有所不同 4、MySQL有不严谨之处,对发现的问题并不会中断执行,而是尽量地猜测其输出数据 1、在WHERE子句中使用列别名,只能直接使用列名或者常量 应用提醒3、Oracle是强大的DBMS,依据select语句执行顺序谢谢观看Thank You For Watching