-1
我有一個包含約800條記錄的結果集,我如何將它們分成八個部分,每個部分包含100條記錄?如何在Sql或SSIS中將單獨的結果設置爲少量部分?
注:結果集,只有一列是一個包含800行,因此這似乎是不可能通過使用「選擇...其中ID 1和100之間的」讓每個100; 'select ...其中ID在101和200之間'等。
任何想法的傢伙?提前欣賞
我有一個包含約800條記錄的結果集,我如何將它們分成八個部分,每個部分包含100條記錄?如何在Sql或SSIS中將單獨的結果設置爲少量部分?
注:結果集,只有一列是一個包含800行,因此這似乎是不可能通過使用「選擇...其中ID 1和100之間的」讓每個100; 'select ...其中ID在101和200之間'等。
任何想法的傢伙?提前欣賞
你可以用這個嗎? 只需設置rownum >=
和解決rownum < 200
;WITH Results_CTE AS
(
SELECT
Col1, Col2, ...,
ROW_NUMBER() OVER (ORDER BY SortCol1, SortCol2, ...) AS RowNum
FROM Table
WHERE <whatever>
)
SELECT *
FROM Results_CTE
WHERE RowNum >= 100
AND RowNum < 200
這正是我想到的! :) – LONG
問題,可能會伴隨着要麼派生表或CTE – LONG
的[在SQL Server LIMIT 10..20]可能的複製(HTTP使用ROWNUMBER在功能間自己的極限:/ /stackoverflow.com/questions/971964/limit-10-20-in-sql-server) –