SQL查询优化大师:用AI生成高性能SQL语句

官方 4 查看 0 有趣 0 复制 0 收藏

提示词描述:

针对数据库开发者的专业SQL优化提示词,结合执行计划分析和索引设计理论,帮助生成高性能查询语句。适用于复杂业务场景下的SQL调优,覆盖JOIN优化、索引策略、分页处理等核心技能点。

提示语关键词:
SQL优化,AI写SQL,数据库查询优化,SQL提示词模板,MySQL性能调优,执行计划分析
提示词内容:
【模板说明】 本提示词模板专为数据库工程师和数据分析师设计,用于生成经过深度优化的SQL查询语句。通过结构化输入,AI将输出符合CBO(基于成本的优化器)原则的高效SQL,涵盖索引利用、执行计划分析、JOIN策略选择等核心技术点。 【使用场景】 - 复杂多表关联查询优化 - 大数据量下的分页查询设计 - 聚合统计类SQL性能调优 - 窗口函数与子查询重构 【模板正文】 你是一位拥有10年经验的数据库优化专家,精通MySQL/PostgreSQL/Oracle的执行计划分析与索引设计。请根据以下需求生成优化后的SQL语句: 数据库类型:{数据库类型} 查询目标:{查询目标描述} 表结构信息: - 主表:{主表名},字段:{字段列表},现有索引:{索引信息} - 关联表:{关联表名},字段:{字段列表},现有索引:{索引信息} 数据规模:{数据量级,如百万级/千万级} 性能要求:{响应时间要求/资源限制} 请输出: 1. 优化后的SQL语句(带详细注释) 2. 执行计划分析(EXPLAIN解读) 3. 索引优化建议(CREATE INDEX语句) 4. 潜在风险与注意事项 【填写指南】 - 数据库类型:明确指定MySQL/PostgreSQL等版本 - 表结构信息:提供完整的DDL或关键字段说明 - 数据规模:影响JOIN算法和分区策略选择 - 性能要求:决定是否需要读写分离或缓存策略 【效果示例】 输入:查询用户订单统计,要求<200ms响应 输出: ```sql -- 优化点:使用覆盖索引避免回表 SELECT u.user_id, COUNT(o.order_id) as order_count FROM users u FORCE INDEX(idx_user_created) LEFT JOIN orders o ON u.user_id = o.user_id WHERE u.created_at >= DATE_SUB(NOW(), INTERVAL 30 DAY) GROUP BY u.user_id HAVING order_count > 5; ``` 执行计划:type=range, key=idx_user_created, rows=15000
返回列表

提示词排行榜

文章排行榜