独立执行的内部查询比整个查询花费的时间更长

时间:2016-07-25 10:00:10

标签: sql-server

我执行了一个查询,发现如果我独立执行内部查询,则执行时间会更长。

我的查询是

select distinct 
   SUBSTRING(UserUri,CHARINDEX('@',UserUri)+1,LEN(UserUri)) as Company
FROM 
   [DWH].[dbo].[UsersDetails]
where 
   UserUri not like '%@mycompany.com%'
   and UserId in (
    select distinct UserId from UsersInfo
    )
   and ISNUMERIC(SUBSTRING(UserUri,CHARINDEX('@',UserUri)+1,LEN(UserUri)))!= 1

总体查询需要18-20秒才能运行。但是当执行内部查询,即(从用户中选择不同的UserId)时,需要40-50秒。

我怀疑的是,如果内部查询需要40-50秒,外部查询应该在此之后结束。

0 个答案:

没有答案