0
嗨我有這個查詢(查看)一些麻煩。SQL Server性能查詢
我使用的是SQL Server 2012的 少數記錄的查詢速度快,但在那之後我只添加1000條記錄(鏈接),它變得很慢(超過23秒),
我不得不採取隨機鏈接爲數據庫中的每個主機,所以我使用Row_Number和分區。
鏈接表有1000個記錄和主機表中有10記錄,但查詢是如此緩慢
有什麼建議增加演出內容嗎?
UPDATE我需要的foreach主機隨機鏈接(可能是1或2或3取決於Host.numLinksPerWork)
;WITH MyCte As
(
SELECT DISTINCT link.namUrl, host.uidHost, host.namHost AS Hostname,
[user].uidUser, usrProfile.UserName AS Username, host.numLinksPerWork,
referer.namUrl AS refererLink,host.Min, host.Max,ROW_NUMBER()
OVER (PARTITION BY host.numLinksPerWork, host.uidHost ORDER BY newid()) AS Number
FROM Links link JOIN
Users[user] ON [user].uidUser = link.codUser JOIN
Profile usrProfile ON usrProfile.UserId = [user].uidUser JOIN
Hosts host ON host.uidHost = link.codHost JOIN
Referers referer ON referer.codHost = host.uidHost JOIN
Referers referer2 ON referer.codUser = [user].uidUser
WHERE [user].flgBanned = 0
)
SELECT MyCte.uidHost, MyCte.uidUser, MyCte.namUrl, MyCte.refererLink,
MyCte.Hostname, MyCte.Username, MyCte.Min, MyCte.Max FROM MyCte
WHERE MyCte.Number <= MyCte.numLinksPerWork!
上下文不足。 – 2014-08-27 07:38:22
在查詢下面也有一個圖表屏幕。順便說一句,我更新了這個問題 – user1107078 2014-08-27 07:42:33