SQL语句是怎么执行的?

2023年 12月 27日 79.8k 0

今天来聊聊喜闻乐见的 SQL。

数据库执行 SQL 语句有几个步骤,包括:

  • 解析 SQL 语句并检查其有效性。
  • 将 SQL 转换为内部表示结构,如关系代数。并创建查询树或查询图,表示操作的逻辑顺序。
  • 优化内部表示结构,并创建一个执行计划。优化器会根据索引、统计数据、可用资源和查询复杂度等因素分析各种潜在的执行计划。其目标是确定执行查询的最有效方式。
  • 执行该计划并返回结果。这一阶段包括访问表中的必要数据、执行任何过滤或条件语句、执行 SQL 语句中指定的 join、聚合和排序操作。

下图以可视化的方式展示了这种执行过程。

图片[1]-SQL语句是怎么执行的?-不念博客

SQL 的执行非常复杂,需要考虑很多因素,例如:

  • 索引和缓存的使用
  • 表连接 (Join) 的顺序
  • 并发控制
  • 事务管理

我们下面来看看 SQL join 如何工作?下图详细说明了 4 种 SQL join 的工作方式。

图片[2]-SQL语句是怎么执行的?-不念博客

  • 内部连接 – 返回两个表中匹配的记录。
  • 左连接 – 返回左表中的所有记录和右表中的匹配记录。
  • 右连接 – 返回右表中的所有记录和左表中的匹配记录。
  • 全外连接 – 返回左表或右表中匹配的所有记录。
  • 相关文章

    Oracle如何使用授予和撤销权限的语法和示例
    Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
    下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
    社区版oceanbase安装
    Oracle 导出CSV工具-sqluldr2
    ETL数据集成丨快速将MySQL数据迁移至Doris数据库

    发布评论