在這裏MSDN關於分區功能,$PARTITION(Transact-SQL)。SQL Server 2005中的分區功能
我很困惑下面的例子是在底層做什麼。我的理解是,此SQL語句將迭代表Production.TransactionHistory中的所有行,因爲對於映射到同一分區的所有行,$ PARTITION.TransactionRangePF1(TransactionDate)將返回相同的值,即所有分區號這樣的行。因此,例如,分區1中的所有行都會返回一行,因爲它們都是$ PARTITION.TransactionRangePF1(TransactionDate)的相同值。我的理解正確嗎?
USE AdventureWorks ;
GO
SELECT $PARTITION.TransactionRangePF1(TransactionDate) AS Partition,
COUNT(*) AS [COUNT] FROM Production.TransactionHistory
GROUP BY $PARTITION.TransactionRangePF1(TransactionDate)
ORDER BY Partition ;
GO
我明白了最後的結果,米奇。 :-) 我的問題是關於內部執行什麼來獲得結果。你能否幫助我檢閱我的文章,看看我的理解是否正確? :-) – George2 2009-03-01 14:06:28