在MySQL中,排序后添加序号列
发布时间:2022-12-08 13:04:03 所属栏目:MySql教程 来源:互联网
导读: 因为我在刷LeetCode题目的时候,遇到了这题Rank Scores
题目的要求是对score进行降序排列后并生成序号。它要得到的结果如下:
我的思路是先将score去重后进行降序排列,然后再添加序号列
题目的要求是对score进行降序排列后并生成序号。它要得到的结果如下:
我的思路是先将score去重后进行降序排列,然后再添加序号列
因为我在刷LeetCode题目的时候,遇到了这题Rank Scores 题目的要求是对score进行降序排列后并生成序号。它要得到的结果如下: 我的思路是先将score去重后进行降序排列,然后再添加序号列,最后将新表与原表利用JOIN联结起来。 1、去重与降序 在MYSQL中,去重要用到DISTINCT语句mysql排序,而它的排序默认的是升序,我们要的是降序便需要用到DESC。代码如下:
2、添加序号列 将上面得到的表命名为T1,对其添加序号列。在这里有个疑惑:为什么不在上表中直接添加序号列呢?例如将代码写成:
运行结果如下:
这时就会发现它没有去重,而且它的序号和原来的ID是一致的。所有说直接添加序号列不可行。因此我们对T1添加序号列,代码如下:
其结果如下:
3、与Scores表(即原表)联结 到这里,只要对Scores表降序排列,再与步骤2得到的T2表联结就可以了。代码如下:
结果如下:
以上。 (编辑:92站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐