`
北极海苔
  • 浏览: 6517 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

数据库学习笔记(1):SELECT 各子句的执行顺序

阅读更多
   最近在学习数据库的相关知识,想和大家分享一下学习后的相关笔记。
   当SELECT语句被DBMS执行时,其子句会按照固定的先后顺序执行:
   (1)FROM  子句。
   (2)WHERE 子句。
   (3)GROUP BY 子句。
   (4)HAVING 子句。
   (5)SELECT 子句。
   (6)ORDER BY 子句。
   基本的工作原理:FROM子句先被执行,通过FROM子句获得一个虚拟表,然后通过WHERE子句从虚拟表中获取满足条件的记录,生成新的虚拟表。将新虚拟表中的记录通过GROUP BY子句分组后得到更新的虚拟表,而后HAVING子句在最新的虚拟表中筛选出满足条件的记录组成另外一个虚拟表中,SELECT子句会将指定的列提取出来组成更新的虚拟表,最后ORDER BY子句对其进行排序得出最终的虚拟表。通常这个最终的虚拟表被称为查询结果集。
分享到:
评论

相关推荐

    数据库学习笔记

    ### 数据库学习笔记知识点梳理 #### 一、条件查询 1. **去重与限制查询结果** - `DISTINCT`:用于去除查询结果中的重复行。 ```sql SELECT DISTINCT WEEK_INDEX FROM tbl_course_register WHERE STATE = 0 ...

    数据库学习笔记.doc

    【数据库学习笔记】 数据库是管理和存储数据的系统,SQL(Structured Query Language)是用于操作数据库的语言。本笔记主要涵盖数据库的CRUD(增删改查)操作,以及针对数据库和表的基本操作。 1. **CRUD操作** -...

    数据库复习学习最全笔记.pdf

    1. 基础查询:使用`SELECT`语句配合`FROM`子句。 - 例子:`SELECT name, age FROM student;` - 查询所有字段可用`*`代替字段列表。 2. 多表查询:涉及两个或多个表,包括笛卡尔积和显式/隐式内连接。 - 例子:`...

    编程学习笔记(数据库,C#)

    在ORDER BY子句中,DECODE也十分有用,例如按特定顺序排序列: ``` SELECT * FROM table_subject ORDER BY DECODE(subject_name, '语文', 1, '数学', 2, '外语', 3); ``` 2. **Oracle中的SUBSTR函数**: ...

    Oracle学习笔记.pdf

    1. **SQL执行顺序**: SQL语句的执行顺序是:`FROM` -> `WHERE` -> `SELECT` -> `GROUP BY` -> `HAVING` -> `ORDER BY`。首先从`FROM`子句开始,确定数据来源;接着`WHERE`子句过滤数据;然后`SELECT`提取所需字段...

    Oracle学习笔记.doc

    ### Oracle学习笔记知识点详解 #### 一、SQL概述与Oracle...以上是关于Oracle学习笔记中的主要知识点详细介绍,涵盖了SQL的基础概念、基本操作、高级查询技巧等多个方面,帮助读者全面掌握Oracle数据库的使用方法。

    Oracle学习笔记.txt

    ### Oracle学习笔记知识点详解 #### 一、Oracle基础概念与常用命令 1. **`desc` 命令**:用于描述表结构。通过输入 `desc 表名` 可以查看该表的所有列信息,包括列名、数据类型、是否为空等。 2. **`dual` 表**...

    SqlServer2008--学习笔记

    - 关于查询的顺序:虽然在SQL中写查询时顺序不固定,但逻辑上会先进行FROM子句中的表关联操作,然后是WHERE子句的过滤,接着是GROUP BY子句进行分组,最后是SELECT子句选取需要展示的字段。 - 连接查询包括内连接...

    SQl数据库\SQL查询精华简要(学习笔记)

    - **选择部分列**:可以指定列名的顺序,如`SELECT nickname, email FROM testtable`。 - **更改列标题**:通过`列标题=列名`或`列名 列标题`的方式可以重命名列标题,如`SELECT 昵称=nickname, 电子邮件=email ...

    2009达内SQL学习笔记

    二、写子句顺序 Select column,group_function From table [Where condition] [Group by group_by_expression] [Having group_condition] …… [Order by column]; --最后 三、常用简单语句: clear screen...

    sql学习笔记 常见问题总结

    SQL(Structured Query ...以上只是SQL学习笔记中的部分要点,实际应用中还需要结合具体数据库系统(如MySQL、Oracle、SQL Server等)的特点和最佳实践。通过持续学习和实践,才能真正精通SQL,成为数据管理的高手。

    oracle学习笔记--言简意赅

    ### Oracle学习笔记精要 ...以上是Oracle学习笔记中的关键知识点总结,涵盖了SQLPLUS的基本命令、SQL语句的结构、SELECT语句的使用技巧等多个方面,旨在帮助初学者快速掌握Oracle数据库的基础操作和查询技术。

    Oracle学习笔记_(PDF版)

    - **SELECT语句执行顺序**: 先执行 `WHERE` 子句,然后是 `GROUP BY` 和 `HAVING` 子句,最后是 `ORDER BY` 子句。 - **修改管理员权限**: - 首先以超级管理员身份登录。 - 授权给特定用户(如scott)创建表和视图...

    高性能mysql学习笔记

    ### 高性能MySQL学习笔记:查询性能优化与实践 #### 一、查询性能低下的原因与分析步骤 查询性能低下通常归因于访问了过多的数据。优化查询性能的关键在于识别并减少不必要的数据访问。具体可以通过以下两个步骤...

    MySQL笔记1

    MySQL笔记1主要涵盖了数据库基础、MySQL简介、使用MySQL连接、数据检索、排序、过滤、通配符与正则表达式、计算字段、...以上是MySQL笔记1的主要内容,覆盖了数据库基础到进阶操作,为全面学习和掌握MySQL提供了基础。

    02_oracle学习笔记第一天

    ### Oracle 学习笔记知识点详解 #### 一、Oracle 基础操作 - **环境配置**:在虚拟机中安装好 Oracle 数据库后,可通过本机连接虚拟机上的 Oracle 数据库。安装时数据库名字被命名为 `orcl`。 - **连接命令**:...

    oracle 学习笔记

    2. Having子句在执行顺序上紧跟Group By子句。 3. Where和Having的区别在于作用范围不同,Where是在分组之前过滤记录,Having则是在分组之后过滤聚合结果。 十一、非关联子查询 1. 非关联子查询是一类独立的查询,...

    ado.net学习笔记

    ### ADO.NET 学习笔记 #### 一、ADO.NET 概述与注意事项 ADO.NET 是 Microsoft 开发的一款用于访问数据库的技术,它提供了一系列的类库来帮助开发人员执行数据库操作,如连接数据库、执行 SQL 命令、读取数据等。...

    mysql学习笔记(无水印版)

    根据提供的信息,我们可以总结出以下关于MySQL的重要知识点...以上内容涵盖了MySQL学习笔记中的核心知识点,这些知识点对于理解和使用MySQL数据库至关重要。通过掌握这些基础概念和技术,你可以更好地管理和操作数据。

Global site tag (gtag.js) - Google Analytics