sql – 内联函数和视图之间的差异

前端之家收集整理的这篇文章主要介绍了sql – 内联函数和视图之间的差异前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是使用函数的新手,在我看来,内联函数与视图非常相似.我对么?

另外,我可以在函数中使用UPDATE语句吗?

解决方法

在阅读了这里的许多答案之后,我想指出一个内联表值函数和任何其他类型的函数(标量或多行TVF)之间存在很大差异.

内联TVF只是一个参数化视图.它可以像视图一样进行扩展和优化.在“返回结果”或类似之前不需要实现任何内容(尽管不幸的是,语法具有RETURN.

我发现内联TVF对视图的一个很大的好处是它确实强制了所需的参数化,而在视图中,你必须假设调用者将适当地加入或限制视图的使用.

例如,我们在DW中有许多具有典型Kimball星型模型的大型事实表.我有一个以事实为中心的模型的视图,它没有任何限制地调用,将返回数亿行.通过使用具有适当参数化的内联TVF,用户无法意外地询问所有行.两者之间的表现在很大程度上难以区分.

猜你在找的MsSQL相关文章