问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

一文讲懂SQL语法顺序与执行顺序

发布网友 发布时间:2024-09-26 05:37

我来回答

1个回答

热心网友 时间:2024-10-06 06:37

大家好,我是宁一。

今天为大家讲解SQL教程第17课:SQL语句书写顺序与执行顺序。

SQL语句的书写顺序与执行顺序并不相同,本节课将帮助大家理清这一点。

1、书写顺序

书写顺序至关重要,顺序错误会导致错误。

我们之前课程已经学过SELECT、WHERE、ORDER BY、LIMIT、JOIN、UNION、GROUP BY、HAVING语句的用法。

如果这些语句在SQL中同时存在,它们的书写顺序如下:

虽然看起来有些复杂,但通过实战练习,自然就能记住。

2、执行顺序

1. FORM:选择FROM后面的表,生成虚拟表1。

2. ON:ON是JOIN的连接条件,满足连接条件的行会被记录在虚拟表2中。

3. JOIN:如果指定了LEFT JOIN,则保留表中未匹配的行将作为外部行添加到虚拟表2中,生成虚拟表3。如果有多个JOIN链接,将重复执行步骤1~3,直到处理完所有表。

4. WHERE:对虚拟表3进行WHERE条件过滤,符合条件的记录会被插入到虚拟表4中。

5. GROUP BY:根据GROUP BY子句中的列,对虚拟表2中的记录进行分组操作,生成虚拟表5。

6. HAVING:对虚拟表5进行HAVING过滤,符合条件的记录会被插入到虚拟表6中。

7. SELECT:SELECT操作在最后一步执行,选择指定的列,插入到虚拟表7中。

8. UNION:UNION连接的两个SELECT查询语句,会重复执行步骤1~7,生成两个虚拟表7,并将这些记录合并到虚拟表8中。

9. ORDER BY: 对虚拟表8中的记录进行排序,生成虚拟表9。

10. LIMIT:取出指定行的记录,返回结果集。

3、总结:

书写顺序:SELECT -> FROM -> JOIN -> ON -> WHERE -> GROUP BY -> HAVING -> UNION -> ORDER BY -> LIMIT

执行顺序:FROM -> ON -> JOIN -> WHERE -> GROUP BY -> HAVING -> SELECT -> UNION -> ORDER BY -> LIMIT

4、需要注意的地方:

1. SELECT语句总是写在最前面,但在大部分语句之后才执行。所以在SQL语句中,我们不能在WHERE、GROUP BY、HAVING语句中使用在SELECT中设定的别名。

2. 无论是书写顺序还是执行顺序,UNION都排在ORDER BY前面。SQL语句会将所有UNION段合并后,再进行排序。

我们本节课程总结了SQL语句的书写顺序和执行顺序,理解这些有助于我们对SQL语句进行优化,提高我们的数据库理解能力,为编写复杂SQL奠定基础。

如果能掌握SQL语句书写顺序和执行顺序,那么恭喜你,已经可以解决大部分的SQL问题了。

下节课我们将开始讲解子查询,理解这节课内容后,编写更复杂的SQL就会得心应手了~

热心网友 时间:2024-10-06 06:38

大家好,我是宁一。

今天为大家讲解SQL教程第17课:SQL语句书写顺序与执行顺序。

SQL语句的书写顺序与执行顺序并不相同,本节课将帮助大家理清这一点。

1、书写顺序

书写顺序至关重要,顺序错误会导致错误。

我们之前课程已经学过SELECT、WHERE、ORDER BY、LIMIT、JOIN、UNION、GROUP BY、HAVING语句的用法。

如果这些语句在SQL中同时存在,它们的书写顺序如下:

虽然看起来有些复杂,但通过实战练习,自然就能记住。

2、执行顺序

1. FORM:选择FROM后面的表,生成虚拟表1。

2. ON:ON是JOIN的连接条件,满足连接条件的行会被记录在虚拟表2中。

3. JOIN:如果指定了LEFT JOIN,则保留表中未匹配的行将作为外部行添加到虚拟表2中,生成虚拟表3。如果有多个JOIN链接,将重复执行步骤1~3,直到处理完所有表。

4. WHERE:对虚拟表3进行WHERE条件过滤,符合条件的记录会被插入到虚拟表4中。

5. GROUP BY:根据GROUP BY子句中的列,对虚拟表2中的记录进行分组操作,生成虚拟表5。

6. HAVING:对虚拟表5进行HAVING过滤,符合条件的记录会被插入到虚拟表6中。

7. SELECT:SELECT操作在最后一步执行,选择指定的列,插入到虚拟表7中。

8. UNION:UNION连接的两个SELECT查询语句,会重复执行步骤1~7,生成两个虚拟表7,并将这些记录合并到虚拟表8中。

9. ORDER BY: 对虚拟表8中的记录进行排序,生成虚拟表9。

10. LIMIT:取出指定行的记录,返回结果集。

3、总结:

书写顺序:SELECT -> FROM -> JOIN -> ON -> WHERE -> GROUP BY -> HAVING -> UNION -> ORDER BY -> LIMIT

执行顺序:FROM -> ON -> JOIN -> WHERE -> GROUP BY -> HAVING -> SELECT -> UNION -> ORDER BY -> LIMIT

4、需要注意的地方:

1. SELECT语句总是写在最前面,但在大部分语句之后才执行。所以在SQL语句中,我们不能在WHERE、GROUP BY、HAVING语句中使用在SELECT中设定的别名。

2. 无论是书写顺序还是执行顺序,UNION都排在ORDER BY前面。SQL语句会将所有UNION段合并后,再进行排序。

我们本节课程总结了SQL语句的书写顺序和执行顺序,理解这些有助于我们对SQL语句进行优化,提高我们的数据库理解能力,为编写复杂SQL奠定基础。

如果能掌握SQL语句书写顺序和执行顺序,那么恭喜你,已经可以解决大部分的SQL问题了。

下节课我们将开始讲解子查询,理解这节课内容后,编写更复杂的SQL就会得心应手了~
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
学习编程要注意的问题有哪些? 舌癌是怎么引起的,有哪些症状表现?有哪些治疗手段? 舌头有白斑怎么治疗 为什么vivo手机充电屏幕还是亮的? 无锡常开fox压力开关规格型号 快速接头lsq*s1*02sf*1/4"bsp型号中sf什么意思 刚怀孕头一个月吃烤串和烤烧鸡,鸽子一类的好吗 唐三学琴是第几集 为什么有的老人会感到孤独和寂寞? 本人初中生,英语成绩不忍直视,去补习班的话还有救吗? 怎样找到vm虚拟机的快照? 环评工程师报名有什么条件要求 桶子鸡是不是非遗 ?抖音化妆品为什么便宜是不是假货 注册环评工程师是什么意思? 22年8月女团品牌评价榜TOP10:粉墨稳居第一,少时升二,SM三代女团在榜 炖汤老鸽子好还是乳鸽好鸽子熬汤大的好还是小的好 注册环保工程师 和 环境影响评价工程师 及 环境工程师 三者的区别及如... 煤矿井下电机车架空线是多少伏电压 原神手游掣电树在哪个位置(原神掣电树开启方式)「专家说」 原神掣电树怎么去 原神掣电树如何去 原神须弥掣电树怎么去-须弥掣电树前往方法 cyan是什么车? cyan是什么车 丝雨美容美发杭州会员卡身体护理可以用吗 个人知识库管理工具搭建 谁知道和周杰伦拍那个优乐美奶茶广告的那女的是谁? 与周杰伦合作打优乐美广告另外的一个女的是谁 和周杰伦合拍的广告优乐美的女孩是谁 "优乐美"广告中和周杰伦一起打广告的那个女生是谁? 长城G782F显示器色彩调整 税务局对虚报工资如何处罚 百度百科词条编辑审核要多久 ...时都是显示(未找到physx 物理库,请正确安装physx后重新启动游戏... ...请正确安装physx后重新启动游戏”这个怎么安装啊 "卸载电脑原有的"PhysX",重新安装PhysX" 请问这个步骤怎么操作 PHYSX物理库问题,下载了以后安装出现这个"您当前安装的版本比已经安装的... 笔记本电脑开不开机,电源指示灯也不亮,取下电池接通电源也开不了机... 奥迪a4车速到达四十会不会脚底下都响一下 奥迪a6仪表盘15km/h 22.2km什么意思 长期生活在紧张的环境下 怎样让自己放松下来 什么都不做,其实就是在做着某事 手上切辣椒了火辣辣的怎么办 切辣椒后手指火辣辣的怎么处理 切完辣椒后手火辣辣疼用什么清洗比较有效 切辣椒手辣辣的怎么办 怎么在12123上绑定电子驾驶证啊? ...ax^2+bx+4与x轴的两个交点分别为A(-4,0)、B(2,0),与y轴交于点C... 朋友结婚随礼金多少合适? 行驶证绑定不了12123,有统一问题的嘛? ...的平方+bx+4与x轴的两个交点分别为A(-4,0)B(2,0),与y轴交于点C,顶...
  • 焦点

最新推荐

猜你喜欢

热门推荐