mysql中各语法的执⾏顺序_SQL中的语法顺序与执⾏顺序FROM : HOME
SQL 是⼀种声明式语⾔
SQL 语⾔是为计算机声明了⼀个你想从原始数据中获得什么样的结果的⼀个范例,⽽不是告诉计算机如何能够得到结果。
SQL 语⾔声明的是结果集的属性,计算机会根据 SQL 所声明的内容来从数据库中挑选出符合声明的数据,⽽不是像传统编程思维去指⽰计算机如何操作。
SQL 语句的语法顺序是:
SELECT[DISTINCT]
FROM
WHERE
GROUP BY
HAVING
UNION
ORDER BY
执⾏顺序为:
FROM
WHERE
GROUP BY
HAVING
SELECT
DISTINCT
UNION
ORDER BY
关于 SQL 语句的执⾏顺序,有三个值得我们注意的地⽅:
1、 FROM 才是 SQL 语句执⾏的第⼀步,并⾮ SELECT 。数据库在执⾏ SQL 语句的第⼀步是将数据从硬盘加载到数据缓冲区中,以便对这些数据进⾏操作。
2、 SELECT 是在⼤部分语句执⾏了之后才执⾏的,严格的说是在 FROM 和 GROUP BY 之后执⾏的。理解这⼀点是⾮常重要的,这就是你不能在 WHERE 中使⽤在 SELECT 中设定别名的字段作为判断条件的原因。
如果你想重⽤别名new_rq,你有两个选择。要么就重新写⼀遍 new_rq 所代表的原字段:
或者求助于衍⽣表、通⽤数据表达式或者视图,以避免别名重⽤。
3、 ⽆论在语法上还是在执⾏顺序上, UNION 总是排在在 ORDER BY 之前。很多⼈认为每个 UNIO
N 段都能使⽤ ORDER BY 排序,但是根据 SQL 语⾔标准和各个数据库 SQL 的执⾏差异来看,这并不是真的。尽管某些数据库允许 SQL 语句对⼦查询(subqueries)或者派⽣表(derived tables)进⾏排序,但是这并不说明这个排序在 UNION 操作过后仍保持排序后的顺序。
(温馨提⽰:并⾮所有的数据库对 SQL 语句使⽤相同的解析⽅式。如 MySQL、PostgreSQL和 SQLite 中就不会按照上⾯第⼆点中所说的⽅式执⾏。)
【SQL】SQL 中Select语句完整的执⾏顺序
SQL Select语句完整的执⾏顺序: 1.from⼦句组装来⾃不同数据源的数据: 2.where⼦句基于指定的条件对记录⾏进⾏筛选: 3.group by⼦句将数据划分为多个分组: 4.使⽤聚集函 ...
sql中select语句的逻辑执⾏顺序
下⾯是SELECT语句的逻辑执⾏顺序: FROMONJOINWHEREGROUP BYWITH CUBE or WITH ROLLUPHAVINGSELECTDISTINCTORDER BYTOP M ...
SQL 中的语法顺序与执⾏顺序(转)
很多程序员都很抵触SQL.其实SQL是⼀整为数不多的声明性语⾔,只是它的运⾏⽅式完全不同于我们
所熟知的命令⾏语⾔.⾯向对象的程序语⾔.甚⾄是函数语⾔. 今天⼤家共同学习下SQL的语法顺序与执⾏顺序.( ...
{MySQL的逻辑查询语句的执⾏顺序}⼀ SELECT语句关键字的定义顺序 ⼆ SELECT语句关键字的执⾏顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执⾏顺序分析
MySQL的逻辑查询语句的执⾏顺序 阅读⽬录 ⼀ SELECT语句关键字的定义顺序 ⼆ SELECT语句关键字的执⾏顺序 三 准备表和数据 四准备SQL逻辑查询测试语句 五 执⾏顺序分析 ⼀ SEL ...
jquery ajax中success与complete的执⾏顺序
jquery ajax中success与complete的执⾏顺序 jquery中各个事件执⾏顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) ...
错误处理之try、catch、finally中的return、throw执⾏顺序。
今天遇到⼀个让⼈⽆语的代码块 try { bilSheetService.syncUser(bilWebseviceLog, userId, optType); }catch (Exception e ...
java中⼦类继承⽗类程序执⾏顺序
java中⼦类继承⽗类程序执⾏顺序 FatherTest.java public class FatherTest { private String name; public FatherTest() ...
mysql 中sql语句关键字的书写顺序与执⾏顺序
书写顺序: select -> from -> where -> group by -> having -> order by 执⾏顺序: from -> wher ...
MySQL语法顺序及执⾏顺序
⼀.书写顺序 select[distinct] from join on where group by having union order by limit ⼆.执⾏顺序 from on join ...
随机推荐
C#中string.Empty ,";"; , null 区别
引⾔ String类型作为使⽤最频繁的类型之⼀,相信⼤家都⾮常熟悉,对于string赋予空值,通常有以下三种⽅式: String str1=null; String
str2=””; String s ...
Spring 报错:Error creating bean with name
org.springframework.beans.factory.BeanCreationException: 原因是在autowire时,不到相应的类,上述问题是因为XXXXX的实现类中没有加相 ...
Android底部导航栏创建——ViewPager + RadioGroup
新CCIE笔记之'⼝⼝相传'路由协议
//由于思科所有命令⾏中没有尖括号"<>"这样的关键字,所以本⽂中出现命令⾏中的尖括号中的内容均为注释提⽰信息,代表此处应该填⼊那⼀类数据. 请容许我将RIP和EIGR ...
JPA关系映射之many-to-many
@ManyToMany Board表实体类 @Entity @Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE) @Table(nam ...
spring boot 拦截异常 统⼀处理
spring boot 默认情况下会映射到 /error 进⾏异常处理,提⽰不友好,需要⾃定义异常处理,提供友好展⽰ 1.⾃定义异常类(spring 对于RuntimeException 异常才会进 ...
How to Configure Email Notification in Jenkins
jQuery绑定事件⽅法及区别(bind,click,on,live,one)
第⼀种⽅式: ? 1 2 3 4 5 $(document).ready(function(){  $("#clickme").click(function(){  alert(& ...
安卓权威编程指南 - 第五章学习笔记&lpar;两个Activity)
学习安卓编程权威指南第五章的时候⾃⼰写了个简单的Demo来加深理解两个Activity互相传递数据的问题,然后将⾃⼰的学习笔记贴上来,如有错误还请指正. IntentActivityDemo学习笔记 ...
层次聚类 Hierarchical Clustering
简单的mysql语句-------------------------------- 不管是GMM,还是k-means,都⾯临⼀个问题,就是k的个数如何选取?⽐如在bag-of-words模型中,⽤k-means训练码书 ...

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。