关于sql语句的执行顺序正确的是_sql语句执行顺序解析

关于sql语句的执行顺序正确的是_sql语句执行顺序解析首先,要清楚在一select语句中都会用到哪些关键字: select from join where group by having order by limit 其次,要知道每执行一步就会生成一个对

关于SQL语句的执行顺序

首先,要清楚在一select语句中都会用到哪些关键字:

———–select 

———–from

———–join

———–where

———–group by

———–having

———–order by

———–limit

其次,要知道每执行一步就会生成一个对应的虚拟表:

明白这两点再看执行的先后顺序

1.from语句:不管是什么SQL语句,都得先知道要在哪张表中操作吧,所以要先执行form语句。然后会生成##虚拟表1##

例如:from   user    这时候的##虚拟表1##   就是user表

2.join(链接表):链接两张或多张表,生成##虚拟表2##

3.where语句:①如果是单表查询,那么就没有join语句,此时where在##虚拟表1##操作,进行过滤,把满足where条件的数据过滤出来,生成##虚拟表3##

                       ②如果多表查询,在这个##虚拟表2##中操作,进行过滤,把满足where条件的数据过滤出来,生成##虚拟表3##

4.group by语句:对满足where条件的##虚拟表3##进行分组操作,分组完成后,生成##虚拟表4##

5.执行having过滤:对##虚拟表4##进行过滤,但是一般都是用聚合函数,生成##虚拟表5##

6.select语句:这个时候执行语句,select *  或 select  id ,name  ,password等,都是在##虚拟表5##中进行操作,把需要的字段从##虚拟表5##中提取出来,生成##虚拟表6##

7.order by语句:根据##虚拟表6##中的某个字段进行排序,生成##虚拟表7##

8.limit字句:在##虚拟表7##上操作,从指定位置取出数据,生成##最终表##

总结:form>where>group by>having>select>order by>limit

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/5618.html

(0)
上一篇 2023-05-01
下一篇 2023-05-02

相关推荐

  • Anaconda Ubuntu 安装教程

    Anaconda Ubuntu 安装教程Anaconda是一个多语言数据科学平台,提供了一个简单易用、高效的方式进行数据科学工作流的管理。在使用Python进行数据科学工作的过程中,Anaconda是一个十分重要的工具。

    2024-07-30
    32
  • 统计Python列表中元素出现的次数

    统计Python列表中元素出现的次数Python中统计一个列表中元素出现次数的方法是collections库中的Counter,它是一个字典的子类,用于统计各个元素出现的次数。它可以接受任意可迭代对象作为输入参数,其中元素作为键,它们在可迭代对象中出现的次数作为值。

    2024-01-23
    108
  • 多表连接查询_sql多表查询语句

    多表连接查询_sql多表查询语句1.什么是连接查询:在实际开发中大部分都不是从一张表中查询数据,一般都是多张表联合查询取得结果。 实际开发中,一般一个业务对应多张表。比如:学生和班级,起码两张。(因为一张表可能会出现冗余的情况,即数

    2023-06-11
    143
  • Python换行输出

    Python换行输出Python 是一种使用简单直观、动态类型的面向对象编程语言,它的应用领域非常广泛。Command-line-interface(简称CLI)是一种常见的 Python 开发环境,Python程序经常在命令行终端中运行。然而,当我们尝试在 Python 中进行输出时,可能经常会遇到需要进行换行输出的情况。

    2024-06-26
    44
  • 初级程序员必备的代码基本规范有哪些_编写程序入门代码

    初级程序员必备的代码基本规范有哪些_编写程序入门代码所以今天我将我在《阿里巴巴Java开发手册》中看到的一些有用的、适合初级程序员的代码基本规范,分享给大家!如果是大括号内为空,则简洁地写成{}即

    2022-12-14
    154
  • 容器化|在 S3 备份恢复 RadonDB MySQL 集群数据[通俗易懂]

    容器化|在 S3 备份恢复 RadonDB MySQL 集群数据[通俗易懂]作者:程润科、钱芬 视频:钱芬 上一篇文章我们演示了如何快速实现 MySQL 高可用集群部署,以及部署集群的校验和卸载方式。本文将演示如何对集群进行备份和恢复。 部署版本为 RadonDB MySQL

    2023-05-13
    140
  • python读取hid(python读取hive数据库)

    python读取hid(python读取hive数据库)1.1 读取整个文件

    2023-11-27
    108
  • (四面)阿里中间件:底层+算法+微服务+数据库+架构!面经分享「终于解决」

    (四面)阿里中间件:底层+算法+微服务+数据库+架构!面经分享「终于解决」每个人都拥有大厂梦,我也不例外,在小公司待久了,感觉人会荒废掉,太轻松,没有压迫感。在众多大厂中,最终选择了阿里。“年轻、活力、富有激情”是我听到得最多对它的形容词,所以毅然决然,希望自己能够在这个…

    2023-03-24
    147

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注