我们将数据库从sql server迁移到mysql。 在以前的数据库中他们创建了视在视图中,他们使用了dense_rank()但没有像dense_rank这样的函数。我在mysql查询中实现了密集排名。但我必须在视图中实现密集排名。如果有人有解决方案。请帮助我。
答案 0 :(得分:0)
你为什么要转向MySQL?还有其他免费数据库,性能更高,并支持所有ANSI功能。但是,您可以使用相关子查询来执行此操作:
select t.*,
(select count(distinct t2.<order by column>)
from t t2
where t2.<partition by column> = t.<partition by column> and
t2.<order by column> <= t.<order by column>
) as dense_rank
from t;