国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

TOPN 子句與SET ROWCOUNTN 之對比

2024-07-21 02:31:08
字體:
來源:轉載
供稿:網友

問:為了從查詢中返回指定數量的行,使用 TOPN 子句比使用SET ROWCOUNTN 語句要快嗎?

答:在正確進行了索引的情況下,TOP N 子句和SET ROWCOUNT N 語句是一樣快的,但是如果數據未經過排序,TOP N 要快一些。在輸入未排序的情況下,TOP N 操作時使用一個經過排序的小的中間臨時表,而且操作時僅僅替換該表的最后一行。如果輸入是近似排序的,TOP N 引擎必須刪除或插入最后行,但只需幾次操作即可。近似排序意味著您正在處理的堆集在初始構建時可進行有序的插入操作,并且不需要進行很多的更新、刪除、向前移動指針等操作。

排序一個近似排序的堆集比排序一個巨大的表要更有效率。在一次測試中,使用TOP N 來對一個由無序插入操作構建的并且含有同樣的行數的表進行排序,發現TOP N 的效率也不高。通常,在進行過索引和未進行過索引的情況下,I/O時間都是一樣的;但是如果沒有進行過索引,SQL Server 必須要進行一次全表掃描。處理器時間和實耗時間說明近似排序的堆集要更有效率一些。但I/O時間是相同的,因為不管怎樣SQL Server都要讀取所有的行。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白玉县| 巴楚县| 平谷区| 高平市| 南华县| 晋城| 波密县| 信宜市| 淮南市| 汪清县| 恩平市| 鹰潭市| 广安市| 英吉沙县| 阿鲁科尔沁旗| 永城市| 壶关县| 潜江市| 诏安县| 西乌珠穆沁旗| 宁都县| 景谷| 东乡族自治县| 信丰县| 普洱| 万安县| 武汉市| 腾冲县| 淅川县| 宁陕县| 阜平县| 广宁县| 巫山县| 阳曲县| 迁安市| 耿马| 青州市| 高陵县| 汝州市| 宁海县| 镇远县|