为什么这个操作需要4秒才能执行(使用2000000行数据)?
DECLARE @AccountId INT
DECLARE @Max INT
DECLARE @MailingListId INT
SET @AccountId = 6730
SET @Max = 2000
SET @MailingListId = 82924
SELECT TOP (@Max) anp_Subscriber.Id , Name, Email
FROM anp_Subscription WITH(NOLOCK)
INNER JOIN anp_Subscriber WITH(NOLOCK)
ON anp_Subscriber.Id = anp_Subscription.SubscriberId
WHERE [MailingListId] = @MailingListId
AND Name LIKE '%joe%'
AND [AccountID] = @AccountId
--------------------- 这个查询执行时间不到1秒(查询200万行) -----------------------
SELECT TOP 2000 anp_Subscriber.Id ,Name, Email
FROM anp_Subscription WITH(NOLOCK)
INNER JOIN anp_Subscriber WITH(NOLOCK)
ON anp_Subscriber.Id = anp_Subscription.SubscriberId
WHERE [MailingListId] = 82924
AND Name LIKE '%joe%'
AND [AccountID] = 6730
为什么执行时间会有差异?我想使用上方的查询语句。我能做些什么来优化它吗?
提前感谢!/Christian