ind*_*dra 5 sql performance coding-style sql-server-2008 sql-execution-plan
我正在编写具有相当复杂的数据集,大量连接的报告.为了简化问题,因为我基本上是一个面向对象的开发者,我一直在写小(通常是标量)函数来做到这一点可以通过参加到一个子查询所要做的工作.这种事:
SELECT
x.Name, x.userId,
... [more columns and joins]
dbo.CountOrders(x.userId)
FROM Customers x
WHERE ...
Run Code Online (Sandbox Code Playgroud)
这是好习惯吗?马虎?慢?我应该编写常规的 T-SQL来做这些事吗?
我几乎永远不会有一个进行数据访问的标量 UDF。
标量 UDF 无法由优化器扩展,需要进行 RBAR 评估。众所周知,这不是一个好主意。
一些示例阅读。
归档时间: |
|
查看次数: |
297 次 |
最近记录: |