Skip to content

格式化与代码

SQL 索引推荐

Spot missing indexes from WHERE / JOIN / ORDER clauses.

Runs in your browser

Recommendations · 4

  • u.created_athigh

    Used in WHERE — high selectivity benefit

    CREATE INDEX idx_u_created_at ON …(created_at);
  • p.author_idhigh

    Join column — index speeds up the lookup

    CREATE INDEX idx_p_author_id ON …(author_id);
  • u.idhigh

    Join column — index speeds up the lookup

    CREATE INDEX idx_u_id ON …(id);
  • postsmed

    ORDER BY — composite index can avoid filesort

    CREATE INDEX idx_posts ON …(posts);

编辑注

Understanding · B-trees by default — and the five other kinds for when they're not enough.

本深度章节目前仅有英文版本。上方的转换工具支持您的语言;长篇说明文章尚未翻译。

常见问题

Quick answers.

Which SQL dialects are supported?

The analyzer works with standard SQL syntax compatible with PostgreSQL, MySQL, and SQL Server. It focuses on identifyng `WHERE`, `JOIN`, and `ORDER BY` clauses common to all relational engines.

Does this tool access my database?

No. The analyzer is a static parser that runs entirely in your browser. It evaluates the text of your query and does not require a connection to your live database infrastructure.

Why does it suggest composite indexes?

Composite indexes are recommended when a query filters on multiple columns simultaneously. This allows the database engine to locate records more efficiently than using two separate single-column indexes.

Are there risks to adding too many indexes?

Yes. While indexes speed up read operations, they slow down `INSERT`, `UPDATE`, and `DELETE` actions because the index must also be updated. Only implement recommendations for queries that run frequently or are noticeably slow.

大家也在搜索

相关工具

More in this room.

查看所有 格式化与代码