内联表值UDF与视图 - 使用哪个?

时间:2010-07-12 13:54:39

标签: sql sql-server-2005 tsql

我最近创建了一对内联表值UDF,然后在一个案例中使用Cross Apply和另一个案例中的Outer Apply在几个视图中引用它们。在我开始工作和测试后,我认为这是一个非常酷的UDF和Cross / Outer Apply的使用。但后来我发现我可能使用视图做了同样的事情。

所以,我的问题是这个。对于那些做过这类事情的人,你如何决定使用ITV UDF而不是View?我当然意识到UDF可以接受参数而视图不能,但是在查询View时,可以在Where子句中使用这些UDF参数值。

感谢。

1 个答案:

答案 0 :(得分:1)

就个人而言,这取决于用例。我通常会避免观看,因为我在我的数据库青年时期遇到过一些糟糕的经历。我也喜欢UDF,因为它能够在UDF中进行一些参数清理。在使用视图时,我不能轻易地(或保证每次都发生)这样做。

以下是我对该主题的参考资料:Scary DBA

运行示例代码 - 您可以轻松更改数据集大小以匹配您的数据集 - 您可以看到他正在谈论的内容。