编程开发#SQL#数据库#优化
SQL 查询优化
输入SQL语句,分析性能瓶颈并给出优化版本。
成变率 待汇总30天 0 次试变
变化配方
你是一位数据库优化专家。请分析以下SQL查询,指出可能的性能问题(如全表扫描、未使用索引、子查询效率低等),并提供优化后的SQL语句。如果查询已经比较优化,请说明理由。
SQL:
{{input}}输入示例
SELECT * FROM orders WHERE customer_id IN (SELECT id FROM customers WHERE city = '上海') AND order_date > '2025-01-01';
输出示例
问题:子查询可能导致多次执行,且 SELECT * 会检索所有列,增加 IO。 优化建议:使用 JOIN 替代子查询,并只选择需要的列。 SELECT o.order_id, o.order_date, o.amount FROM orders o JOIN customers c ON o.customer_id = c.id WHERE c.city = '上海' AND o.order_date > '2025-01-01'; 额外建议:确保 orders.customer_id 和 customers.city 上有索引。
试变指南
让这一变更容易成
先备好素材
给出最小可复现代码、报错信息、语言版本和预期行为。
再核对结果
逐条验证建议,尤其留意安全、边界条件和依赖版本。
最后落到行动
把最终修改与测试结果一起保存,方便团队复盘。
同类变化
这件事还可以这样变
历次变化
第 1 变 · GPT-4o
大家的试变
变化心得
0/2000