sql执行顺序的优先级是多少_sql执行语句的顺序

sql执行顺序的优先级是多少_sql执行语句的顺序SELECTDISTINCTcolumn,AGG_FUNC(column_or_expression),…FROMmytableJOINanother_tableONmytable.column=another_table.columnWHEREconstraint_expressionGROUPBYcolumnHAVINGconstraint_expressionORDERBYcolumnASC/DESC

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

SELECT DISTINCT column, AGG_FUNC(column_or_expression),FROM mytable
    JOIN another_table
      ON mytable.column = another_table.column
    WHERE constraint_expression
    GROUP BY column
    HAVING constraint_expression
    ORDER BY column ASC/DESC
    LIMIT count OFFSET COUNT;

Jetbrains全家桶1年46,售后保障稳定

  1. FROM 和 JOINs
    FROM 或 JOIN会第一个执行,确定一个整体的数据范围. 如果要JOIN不同表,可能会生成一个临时Table来用于 下面的过程。总之第一步可以简单理解为确定一个数据源表(含临时表)

  2. WHERE
    我们确定了数据来源 WHERE 语句就将在这个数据源中按要求进行数据筛选,并丢弃不符合要求的数据行,所有的筛选col属性 只能来自FROM圈定的表. AS别名还不能在这个阶段使用,因为可能别名是一个还没执行的表达式

  3. GROUP BY
    如果你用了 GROUP BY 分组,那GROUP BY 将对之前的数据进行分组,统计等,并将是结果集缩小为分组数.这意味着 其他的数据在分组后丢弃.

  4. HAVING
    如果你用了 GROUP BY 分组, HAVING 会在分组完成后对结果集再次筛选。AS别名也不能在这个阶段使用.

  5. SELECT
    确定结果之后,SELECT用来对结果col简单筛选或计算,决定输出什么数据.

  6. DISTINCT
    如果数据行有重复DISTINCT 将负责排重.

  7. ORDER BY
    在结果集确定的情况下,ORDER BY 对结果做排序。因为SELECT中的表达式已经执行完了。此时可以用AS别名.

  8. LIMIT / OFFSET
    最后 LIMIT 和 OFFSET 从排序的结果中截取部分数据.
    加粗样式

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234587.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2011年1月31日nod32id,nod32免费激活码_NOD32用户名密码

    2011年1月31日nod32id,nod32免费激活码_NOD32用户名密码
    用户名:EAV-40746393密码:f77rk82e7n(适用类型ESS/EAV)

    用户名:EAV-40746397密码:uj7javkt8c(适用类型ESS/EAV)

    用户名:EAV-40899369密码:bsfrudfene(适用类型ESS/EAV)

    用户名:EAV-40898530密码:mpju75r5u7(适用类型ESS/EAV)

    用户名:EAV-40746391密码:aj7urdnr6

    2022年6月16日
    57
  • 我的学习历程

    我的学习历程@[TOC]不负青春,加油干!自我介绍及共勉大家好!我是一名准大三学生,进入编程的大门已经2年的时间,从大一的css与html再到大二的java,javaweb,数据结构与算法(想哭的有没有),mysql,javascript,vue.js,javaee。我从一个啥也不会的小白转变成一个啥都想尝试的大白其中有艰难(调试bug弄了一晚上)有失落(参加蓝桥杯没拿奖)有幸福(用程序给女朋友写了个生日祝福软件)有迷茫(不知道前面的路该怎么选择)。刚进入这个圈子是因为觉得弄计算机的人特别酷,觉得黑客是这个世

    2022年10月5日
    4
  • 用 Flask 来写个轻博客 (19) — 以 Bcrypt 密文存储账户信息与实现用户登陆表单

    用 Flask 来写个轻博客 (19) — 以 Bcrypt 密文存储账户信息与实现用户登陆表单

    2022年2月22日
    52
  • 引起cpu流水线阻塞的三个原因

    引起cpu流水线阻塞的三个原因1、多个任务在同一时间周期内争用同一个流水段(资源冲突)例如,假如在指令流水线中,如果数据和指令是放在同一个储存器中,并且访问接口也只有一个,那么,两条指令就会争用储存器;在一些算数流水线中,有些运算会同时访问一个运算部件。2、数据依赖(数据相关)比如,A运算必须得到B运算的结果,但是,B运算还没有开始,A运算动作就必须等待,直到A运算完成,两次运算不能同时执行。3、 条件转移的影响(条件转移)如…

    2022年8月20日
    14
  • Django(64)频率认证源码分析与自定义频率认证「建议收藏」

    Django(64)频率认证源码分析与自定义频率认证「建议收藏」前言有时候我们发送手机验证码,会发现1分钟只能发送1次,这是做了频率限制,限制的时间次数,都由开发者自己决定频率认证源码分析defcheck_throttles(self,request):

    2022年8月7日
    5
  • oracle可以更改表名,sql – 更改Oracle表名

    oracle可以更改表名,sql – 更改Oracle表名我正在尝试在oracle中更改表名.我首先运行此脚本来声明表CREATETABLECUSTOMER(C_IDNUMBER(6,0),C_LASTVARCHAR2(25),C_FIRSTvarchar2(25),C_MIchar(1),C_DOBDATE,C_ADDRESSvarchar2(100),C_CITYvarchar2(35),C_STATEchar(2),C_ZIP…

    2022年5月17日
    39

发表回复

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

关注全栈程序员社区公众号