首页 > 解决方案 > 使用 find_in_set 和 group_concat 的 SQL 极端案例问题

问题描述

以下 SQL 代码用于分数排名输出。

SELECT Score, 
        FIND_IN_SET(Score,
                    (SELECT GROUP_CONCAT(
                        DISTINCT Score ORDER BY Score DESC
                    ) 
                    FROM Scores)) AS Rank 
                    FROM Scores 
        ORDER BY Rank ASC; 

但是,我发现这段代码通常可以工作,但适用于某些情况,例如表格

在此处输入链接描述

知道为什么这段代码在上述情况下不起作用吗?

标签: mysqlsql

解决方案


推荐阅读