【发布时间】:2014-12-27 00:20:24
【问题描述】:
如果这是一个重复和/或明显的问题,请原谅我,但我在 stackoverflow 或其他在线网站上都找不到满意的答案。
使用 Microsoft SQL Server,我有一个如下所示的嵌套选择查询:
select *
into FinalTable
from
(select * from RawTable1 join RawTable2)
join
(select * from RawTable3 join RawTable4)
可以使用临时表来编写查询,而不是使用嵌套选择,如下所示:
select *
into Temp1
from RawTable1 join RawTable2
select *
into Temp2
from RawTable3 join RawTable4
select *
into FinalTable
from Temp1 join Temp2
虽然等效,但第二个(非嵌套)查询的运行速度比第一个(嵌套)查询快几个数量级。在我的开发服务器和客户端服务器上都是如此。为什么?
【问题讨论】:
标签: sql sql-server