我正在使用SQL Server 2012,它应该具有此内置功能(当我键入时,它甚至会抢占文本PERCENT_),但是当我尝试应用它时,它会失败。
PERCENT_
我相信我的语法是正确的,因为它适用于其他排名和n-tiling函数。
无论如何,这里是:
PERCENT_RANK() OVER (PARTITION BY MONTH, SEGMENT ORDER BY SALES/NULLIF(ORDERS,0) DESC) AS PTILE
谢谢!
这个评论太长了。您需要查看所使用的兼容性级别:
select compatibility_level from sys.databases;
由于此功能是SQL Server 2012中引入的,因此您需要级别为110或更高。
兼容性允许SQL Server的较新版本模拟以前的版本。例如,当您需要运行使用过时功能的代码时,这会很方便。