9
T-SQLの順位付け関数を使用する場合、ランキング値を含む列はNULLにできます。結果セットのビューを作成するときは、これを見ることができますT-SQLランキングの値がnullの列を返すのはなぜですか?
:このビューのsp_help
を実行
CREATE VIEW v
AS
SELECT Name
, ListPrice
, RANK() OVER (ORDER BY ListPrice DESC) AS [Rank]
, DENSE_RANK() OVER (ORDER BY ListPrice DESC) AS [DenseRank]
, ROW_NUMBER() OVER (ORDER BY ListPrice DESC) AS [RowNumber]
FROM Production.Product
はランキング関数を使用して列がNULL可能であることを示している:
条件が引き起こすEXEC sp_help 'v'
Column_name (...) | Nullable
---------------...-+------------+
... (...) | ...
Rank (...) | Yes
DenseRank (...) | Yes
RowNumber (...) | Yes
ランク付け関数はNULL
を返しますか?
ビュー内のAFAIK計算カラムは、実表の計算カラムとは異なる扱いを受けません。 [それについてのいくつかのコメントと空白の可能性については、このページの最後にあります。](http://msdn.microsoft.com/en-us/library/ms191250.aspx) –