广

MSSQL

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    SQL Select语句完整的执行顺序

    2018-04-25 21:46:01 次阅读 稿源:互联网
    广告
    全网推广平台,软文发布
    1、from子句组装来自不同数据源的数据;
    2、where子句基于指定的条件对记录行进行筛选;
    3、group by子句将数据划分为多个分组;
    4、使用聚集函数进行计算;
    5、使用having子句筛选分组;
    6、计算所有的表达式;
    7、使用order by对结果集进行排序。

    举例说明: 在学生成绩表中 (暂记为 tb_Grade), 把 "考生姓名"内容不为空的记录按照 "考生姓名" 分组, 并且筛选分组结果, 选出 "总成绩" 大于 600 分的.
    标准顺序的 SQL 语句为:
    Select 考生姓名, max(总成绩) as max总成绩
    from tb_Grade
    where 考生姓名 is not null
    group by 考生姓名
    having max(总成绩) > 600
    order by max总成绩
    在上面的示例中 SQL 语句的执行顺序如下:
    (1). 首先执行 FROM 子句, 从 tb_Grade 表组装数据源的数据
    (2). 执行 WHERE 子句, 筛选 tb_Grade 表中所有数据不为 NULL 的数据
    (3). 执行 GROUP BY 子句, 把 tb_Grade 表按 "学生姓名" 列进行分组
    (4). 计算 max() 聚集函数, 按 "总成绩" 求出总成绩中最大的一些数值
    (5). 执行 HAVING 子句, 筛选课程的总成绩大于 600 分的.
    (7). 执行 ORDER BY 子句, 把最后的结果按 "Max 成绩" 进行排序.

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告
    广告