我们需要操作从选择查询返回的一组记录。这可以在:
我们可以这样做
Select * from
(select * from table where conditions) AS results
where results.RowNum between ....
Run Code Online (Sandbox Code Playgroud)
那么在这种情况下最好的方法是什么..使用表变量或第二种方法。与第一种方法相比,使用第二种方法是否存在任何性能问题?
“这取决于”
使用表变量或临时表需要创建填充此对象的开销
但是,如果您需要多个处理步骤,那么与反复查询相同数据相比,这很小,尤其是当查询变得更加复杂时。
此外,对于多个步骤,使用表变量或临时表意味着处理所有步骤的同一组数据。通常,底层数据通常会因其他过程而发生变化。
最后,您是否尝试过这两种技术并针对您的实际情况进行了基准测试?我根据上述所有因素使用这两种方法。有时当然没关系...
| 归档时间: |
|
| 查看次数: |
118 次 |
| 最近记录: |