相关疑难解决方法(0)

内联表值UDF能否优于SELECT列列表中的等效标量UDF吗?

这个问题源于SQLServer:为什么要避免使用表值用户定义的函数?.我开始在一些评论中提问,对我的评论的回复偏离主题.


因此,您不必阅读整个讨论:我从未听说它说用户定义的函数(UDF)很慢,或者要避免.在上面引用的问题中发布了一些链接,以说明它们很慢.我仍然没有得到它,并要求一个例子.发布了一个示例,性能差异巨大.

我不可能是唯一一个没有意识到可能存在如此大的性能差异的人.我觉得这个事实应该分成一个新的问题和答案,以提高被发现的机会.这是"问题".请不要关闭,因为我想给回答者时间发布答案.

当然,其他人也应该发布答案或例子.我特别感谢任何有助于我理解为什么性能差异如此巨大的东西.

另请注意,我不是在讨论在WHERE子句中使用UDF.我知道这可以阻止优化器完成它的工作.当原始UDF是SELECT列列表的一部分时,我特别感兴趣的是性能差异.

sql-server user-defined-functions

4
推荐指数
1
解决办法
4408
查看次数

标签 统计

sql-server ×1

user-defined-functions ×1