我做了一个 SQL 查询,它根据页面被查看的次数对页面进行排名。例如,
╔══════╦═══════╗
║ PAGE ║ VIEWS ║
╠══════╬═══════╣
║ J ║ 100 ║
║ Q ║ 77 ║
║ 3 ║ 55 ║
║ A ║ 23 ║
║ 2 ║ 6 ║
╚══════╩═══════╝
现在我想做的是使用 SQL 查询找到每个页面的百分位排名。我想用的数学很简单,我只想用已经生成的表的行数除以总行数。或者 1 减去这个值,这取决于我的兴趣。
我可以像这样对已经生成的表执行 COUNT(pages) 吗?我意识到这就是我将获得总行数的方式。但是有没有返回行号的命令?
只是为了进一步澄清我的问题,我需要以下结果
╔══════╦════════════════╗
║ PAGE ║ Percentile ║
╠══════╬════════════════╣
║ J ║ (1-1/5)*100 ║
║ Q ║ (1-2/5)*100 ║
║ 3 ║ (1-3/5)*100 ║
║ A ║ (1-4/5)*100 ║
║ 2 ║ (1-5/5)*100 ║
╚══════╩════════════════╝
或者一般来说(1-(行号)/(COUNT(页))*100