中文

新手能否攻克难题?探索大语言模型在 SQL 等价性检查中的应用

数据库 2025-06-10 v2 机器学习

摘要

SQL 查询的等价性检查是一个难以处理的问题,常见于从评分 SQL 提交到调试查询优化器等场景。尽管已有研究致力于开发实用解决方案,但仅支持使用 SQL 小子集编写的简单查询,使得复杂 SQL 查询的等价性检查不得不依赖密集且可能出错的人工分析。在本文中,我们探索了如何利用大语言模型(LLMs)对 SQL 查询进行推理以解决这一具有挑战性的问题。为此,我们引入了一个新颖、真实且足够复杂的基准 SQLEquiQuest,用于 SQL 查询等价性检查,反映了真实世界的设置。我们通过利用大语言模型对 SQL 查询进行推理的能力,建立了 SQL 等价性检查的强基线。我们对多个最先进的大语言模型进行了详细评估,采用了多种提示策略和精心构建的上下文学习示例,包括由 SQL 查询处理器生成的逻辑计划。我们的实证评估表明,大语言模型远超当前 SQL 等价性的形式化模型能力,从仅支持 30% 的查询对扩展到全覆盖,在 Spider+DIN 上实现了高达 82% 的准确率。然而,我们的分析揭示了大语言模型的一个关键局限性,即它们在等价性预测上表现出强烈的偏向,对非等价查询对的性能始终较差,这为未来的潜在研究开辟了新方向。

关键词

引用

@article{arxiv.2412.05561,
  title  = {Can the Rookies Cut the Tough Cookie? Exploring the Use of LLMs for SQL Equivalence Checking},
  author = {Rajat Singh and Srikanta Bedathur},
  journal= {arXiv preprint arXiv:2412.05561},
  year   = {2025}
}