首页 > 解决方案 > mysqli查询以更新学生的排名列

问题描述

我有学生数据库的这个 sql 表。 PHP 脚本用于计票。我有这个查询用于对学生进行排名。此 SELECT 查询完美运行,但我想根据否决票更新该列。
在此处输入图像描述



SELECT id, first, vote, @curRank := @curRank + 1 AS rank
FROM student_table p, (
SELECT @curRank := 0
) q
ORDER BY vote DESC

更新
这对我有用的家伙:)

mysqli_query($conn, 'UPDATE student_table SET rank= @r:=0 ORDER BY vote DESC');
mysqli_query($conn, 'UPDATE student_table SET rank= @r:=(@r+1) ORDER BY vote DESC');

标签: phpsqlmysqli

解决方案


SET @r=0;
UPDATE student_table SET rank= @r:= (@r+1) ORDER BY vote DESC;

推荐阅读