我有一个名为
不幸的是,我正在获取所有行并在for循环中检查用户ID,这对我的应用程序性能产生了重大影响。
如何避免这种性能影响?
Toplist
的表,我想要获取某个用户的排名。如何获取该行的索引?不幸的是,我正在获取所有行并在for循环中检查用户ID,这对我的应用程序性能产生了重大影响。
如何避免这种性能影响?
Toplist
的表,我想要获取某个用户的排名。如何获取该行的索引?你可以使用 ROW.NUMBER
这是 MySQL 的示例语法
SELECT t1.toplistId,
@RankRow := @RankRow+ 1 AS Rank
FROM toplist t1
JOIN (SELECT @RankRow := 0) r;
这是MsSQL的示例语法
SELECT ROW_NUMBER() OVER(ORDER BY YourColumn) AS Rank,TopListId
FROM TopList
SELECT ROW_NUMBER() OVER(ORDER BY (SELECT 1)) AS MyIndex
FROM TopList