代码之家  ›  专栏  ›  技术社区  ›  Boppity Bop

SQL语言。如何从实际执行计划中排除语句?

  •  1
  • Boppity Bop  · 技术社区  · 14 年前

    SQL 2008。我在SQL Studio中运行存储过程,当我试图获得实际的执行计划时,它会炸掉tempdb。

    我将问题缩小到调用700K行表上使用的行标量函数。

    我推断SQL正在尝试为该函数创建700K exec计划,并将所有数据写入tempdb,tempdb有3Gb的可用空间。。

    我真的不需要看那个功能的计划。

    我可以明确地从exec计划的生成中排除一个语句吗?

    1 回复  |  直到 14 年前
        1
  •  3
  •   AdaTheDev    14 年前

    除了从查询中删除调用之外,不能将其从执行计划中排除。

    但是,它听起来像是从标量UDF切换到内联表UDF的主要候选者。标量udf可能是导致性能差的一个重要原因,因为它在查询中每行运行一次。

    通读 this article 其中包含要演示的示例。

    推荐文章