在sql server(2008 r2)的视图中使用排名函数是否可靠,尤其是
over (order by ...)
条款?
众所周知
order by
内部视图中的子句不是一个好的方法,即使你指定了
top (100) percent
怎么样?
row_number() over(order by myColumn)
Sql server designer抱怨它,但我找不到有关此组合的任何可靠信息。
答案 0 :(得分:0)
是row_number
在视图中正常工作。设计人员只处理有限的语法。
但它不保证视图中select
的任何特定顺序。为此,您需要在外部查询中订购。
要注意的一个问题是,如果您在分区列won't be pushed down上有partition by
参数化谓词,即使这样做效率更高。因此,可能首选参数化内联表值函数。