要实现按匹配数量排序的FIND_IN_SET,可以使用MySQL的LENGTH函数结合ORDER BY实现排序。以下是一个示例代码:
SELECT column_name
FROM table_name
ORDER BY (LENGTH(REPLACE(column_name, ',', '')) - LENGTH(column_name)) DESC;
在上面的代码中,我们首先使用REPLACE函数将逗号替换为空字符,然后使用LENGTH函数计算替换后的字符串的长度。接下来,我们再使用LENGTH函数计算原始字符串的长度。通过两个长度的差值,我们可以得到匹配数量。最后,使用ORDER BY按匹配数量降序排序。
请注意,上述代码假设column_name列的值是逗号分隔的字符串。如果你的需求是按照其他分隔符进行排序,需要将代码中的逗号替换为相应的分隔符。
希望以上解决方法对你有所帮助!