查询优化问题

时间:2010-09-02 14:27:22

标签: sql-server

假设我有以下查询:

Update LPMBonusReport Set BoxID = (Select ContainerSerialNumber 
       From Wip.vwWorkItem Where SerialNumber = LPMBonusReport.SubID)

对象Wip.vwWorkItem是一个视图。

假设LPMBonusReport表中有100行。视图是否会实现100次,LPMBonusReport中的每一行实现一次,还是只实现一次?

感谢。

2 个答案:

答案 0 :(得分:3)

优化器将基于LPMBonsReport和包含视图的表构建(单个)执行计划。在“包含实际执行计划”的SSMS查询窗口中运行并查看您的查询(这是“查询”菜单中的一个选项。)

答案 1 :(得分:2)

我更愿意删除子查询,并将其视为:

Update BR
    Set BoxID = WI.ContainerSerialNumber
    from LPMBonusReport BR
        inner join Wip.vwWorkItem WI
            on BR.SubID = WI.SerialNumber