我想根據NDPR(磁盤頁讀取次數)計算(最高效)塊嵌套循環連接的成本。假設您有一個查詢表單:計算塊嵌套循環連接的成本
SELECT COUNT(*)
FROM county JOIN mcd
ON count.state_code = mcd.state_code
AND county.fips_code = mcd.fips_code
WHERE county.state_code = @NO
其中@NO在每次執行查詢時替換狀態碼。
我知道我可以使用導出NPDR:NPDR(R x S) = |Pages(R)| + Pages(R)/B - 2 . |P ages(S)|
(其中較小的表,以便產生較少頁用作外讀取埃爾戈: R =縣,S = MCD)。
我也知道,頁面大小= 2048個字節
Pointer = 8 byte
Num. rows in mcd table = 35298
Num. rows in county table = 3141
Free memory buffer pages B = 100
Pages(X) = (rowsize)(numrows)/pagesize
什麼,我想弄清楚是怎麼「WHERE county.state_code = @NO
」影響了我的成本是多少?
謝謝你的時間。
什麼是NDPR(或NPDR)?我猜的是像公式中的髒頁讀取數量。 – Laurence
是的,對不起。我應該指出這一點。 NPDR =頁面磁盤讀取次數。 – JB2