第一次写的时候,把id排序放在了窗口函数中、结果是,如果number数相同,被分配的rank并不相同,id小的rank高。这不符合输出示例。 select id, number, dense_rank() over ( order by number desc, id asc) as t_rank from passing_number 后面修改为:。另外需要注意的点是order by按照执行顺序是最后进行的,所以可以使用t_rank别名。 select id, number, dense_rank() over ( order by number desc) as t_rank from p...