Skip to content

优化:为Users表高频查询字段添加数据库索引#116

Open
Kailigithub wants to merge 1 commit into
datawhalechina:mainfrom
Kailigithub:optimize/add-database-indexes
Open

优化:为Users表高频查询字段添加数据库索引#116
Kailigithub wants to merge 1 commit into
datawhalechina:mainfrom
Kailigithub:optimize/add-database-indexes

Conversation

@Kailigithub

Copy link
Copy Markdown
Collaborator

为 Users 表中高频查询字段添加数据库索引,提升查询性能。

修改内容:

  • phone 字段添加索引(登录、注册校验、密码重置时按手机号查询)
  • role 字段添加索引(管理员列表、权限筛选时按角色查询)
  • register_time 字段添加索引(用户增长统计、注册时间范围查询)

性能影响:

  • 这些字段在 users.pystatistics.py 中被频繁用于 filter()order_by() 查询
  • 添加索引后,相关查询从全表扫描变为索引查找
  • SQLite 环境下索引创建是原子操作,不影响现有数据

验证:

  • 语法校验通过(py_compile)
  • 索引声明方式使用 SQLAlchemy Column(index=True),与项目现有 ORM 用法一致
  • 索引会在 Base.metadata.create_all() 或 alembic migrate 时自动创建

@Kailigithub Kailigithub force-pushed the optimize/add-database-indexes branch from c8e3cf3 to ccf36b4 Compare June 19, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant