项目 在 MySQL 技能树

加快订单查询

在有限索引预算内优化两类 MySQL 订单查询,再用稳定游标完整翻页并核对真实诊断读取工作量。

项目MySQL数据库

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

加快订单查询是一门 MySQL 实践项目,围绕商店订单增长后仍可用的查询展开。选择有效索引,并在第一页之后继续读取,保留时间相同但 ID 不同的原始订单。

两个独立 Guided Lab 分别讲解首页索引优化和完整游标分页。独立 Challenge 在字段和排序方向不同的维修派单数据上结合两部分方法。每个单元都有自己的合成数据,不依赖上一 VM 的文件。

你将学到什么

  • 阅读实际查询计划,区分返回行数、估计值和原生诊断读取请求。
  • 用不超过两个二级索引支持待取订单和客户历史两类查询。
  • 保存可复用半开时间范围查询,以及时间戳和 ID 两键构成的双向完整游标。
  • 在真实分页和空结果终点中保留每个原始身份、精确时间戳和金额。

本课程适合谁

适合了解终端导航、MySQL 连接和 SELECT/WHERE 的初学者。参数、复合索引、排序、NULL 游标和完整查询模板会在使用前解释,无须 Python 或前端开发经验。

LabEx 在浏览器 Terminal 中准备好 MySQL、原始订单和真实查询工具,无须本地安装。第二个 Guided Lab 提供同事已准备的首页查询和索引,让你专注分页。

常见问题

这是生产性能基准吗?

不是。准备好的连接在 SESSION 范围内关闭索引条件下推,使筛选工作体现在原生行读取请求比较中。预算只适用于这个固定诊断环境,不保证物理 I/O、毫秒数或生产提速倍数。保留这些设置;本项目修改查询和限定范围内的索引。

工作台会补回漏单或保证并发分页一致性吗?

它原样执行保存的 SQL,显示实际返回的行和顺序,绝不排序、去重或补回漏单。分页使用固定快照,不保证并发更新期间的一致性。Challenge 所用方法都已在 Guided Lab 中完整练习。

教师

labby
Labby
Labby is the LabEx teacher.