我想在派生列排序的查询上使用SQL Server 2008的排名函数。这里有一个例子使用派生列的SQL排名函数
SELECT
table.FirstName, table.LastName,
CalculatedValue(table.number) As Points,
ROW_NUMBER() OVER (ORDER BY points) AS 'Row Number'
FROM table
ORDER BY points
我总是得到一个错误无效列名“点”因为OVER功能不与别名的基础上,我读过工作。
有谁知道一个替代方案,我可以检索按派生列排序的结果集的顺序行号?
结果集不会有OP所要求的所有列。而派生表上的ORDER BY将不会有任何影响。派生表返回关系,一个无序集合(袋)的行。 – 2009-09-02 20:37:18
我意识到我错过了其他列 - 现在包括:) – 2009-09-02 20:40:27
这工作得很好。感谢您的帮助。 – wrburgess 2009-09-02 23:25:57