任何人都有一个很好的决策树来决定何时使用视图以及何时在SQL Server中使用表值函数?
答案 0 :(得分:13)
虽然任何视图几乎都可以简单地转换为内联表值函数,但反之亦然。
如果需要对构造进行参数化,则使用内联表值函数。内联表值函数基本上是参数化视图,优化器能够将它们与视图结合并推动。多语句表值函数完全不像内联表值函数。
如果使用内联表值函数不能这样做,请使用多语句表值函数。
答案 1 :(得分:2)
在视图中有一些你不能做的事情(例如表格变量,返回结果集之前的中间结果等)...如果你不需要那些,请查看,如果你这样做, sproc / udf: - )
答案 2 :(得分:-1)
好的,我会给我们用的。我们有表,但我们从不访问表,但有关表的视图。这只是一个安全问题。