SuperAPI AI 工具集

query-optimization

数据与分析

查看项目

更新于 10-15 23:41

技能介绍

用途:优化缓慢的 T-SQL 查询、修复 SQL Server 性能回退、改善 SARGability、重写连接,并以可验证证据支撑结论。适用于 SQL Server 与 Azure SQL Database。

主要能力:按强制工作流执行。先做 schema 优先验证,核对版本、兼容级别、完整查询文本与参数、DDL、数据类型(长度、精度、排序规则、可空性)、现有索引与统计信息年龄、分区与行数,以及允许的改动类型;关键事实缺失时只给条件性指导与诊断。随后用实际执行计划、STATISTICS IO/TIME 定位瓶颈,按逻辑读、估算与实际行数偏差、扫描成因、键查找、排序/哈希溢出、远程下推失败等实际影响排序。

核心做法:修复 SARGability 与类型不匹配,避免在索引列上使用函数或转换;用范围谓词替代 YEAR()、LEFT() 等写法;检查参数、临时列、连接键的类型与排序规则。证明连接变更:判断连接是否过滤行、是否放大行数、能否用 EXISTS 半连接替代、外连接是否被 WHERE 改写为内连接,并用 EXCEPT 双向验证等价。检查临时表与暂存表类型,匹配字符串长度、排序规则、数值精度与日期精度。按最少侵入原则选择重写模板,并处理参数敏感性(OPTION (RECOMPILE)、OPTIMIZE FOR、动态 SQL、Query Store 提示、SQL Server 2022+ 的 PSP 优化等)。

统计信息:可用 DBCC SHOW_STATISTICS 与 UPDATE STATISTICS ... WITH FULLSCAN,但大分区表需评估增量统计与生产维护窗口。

输出格式:给出验证状态、瓶颈证据、按允许改动类型分隔的建议、等价性与前后性能证明、以及参数敏感性、写入开销、阻塞、分区安全、远程下推等风险。

限制:资料未提供具体收费、价格、平台版本要求或安装命令;部分引用的辅助文件路径为技能内部引用。