leetcode Database3
一、Rank Scores
Write a SQL query to rank scores. If there is a tie between two scores, both should have the same ranking. Note that after a tie, the next ranking number should be the next consecutive integer value. In other words, there should be no "holes" between ranks.
+----+-------+ | Id | Score | +----+-------+ | 1 | 3.50 | | 2 | 3.65 | | 3 | 4.00 | | 4 | 3.85 | | 5 | 4.00 | | 6 | 3.65 | +----+-------+
For example, given the above Scores
table, your query should generate the following report (order by highest score):+-------+------+
| Score | Rank | +-------+------+ | 4.00 | 1 | | 4.00 | 1 | | 3.85 | 2 | | 3.65 | 3 | | 3.65 | 3 | | 3.50 | 4 | +-------+------+分析:题意为 编写SQL对分数进行排序。如果两个分数相等,其排名应相同。注意在排名相等的分数之后,下一个排名的数值应该连续。换言之,排名之间不应该有“洞”(跳跃)。思路:使用mysql的自定义变量。
# Write your MySQL query statement below
select Score,Rank from
(
SELECT Score,CASEWHEN @dummy <=> Score THEN @Rank := @Rank ELSE @Rank := @Rank +1END AS Rank,@dummy := Score as dummy
FROM(SELECT @Rank := 0,@dummy := NULL) r,Scores
ORDER BY Score DESC
) AS C
或者:
# Write your MySQL query statement below
SELECT Scores.Score, COUNT(Ranking.Score) AS RANKFROM Scores, (SELECT DISTINCT ScoreFROM Scores) RankingWHERE Scores.Score <= Ranking.ScoreGROUP BY Scores.Id, Scores.ScoreORDER BY Scores.Score DESC;
转载于:https://www.cnblogs.com/carsonzhu/p/4655573.html
leetcode Database3相关推荐
- leetcode 5. Longest Palindromic Substring 字符串中的最长回文数 逐步从O(n^2)优化至线性时间
题目 解析 思路一 暴力解法 思路二 指针+最大长度 思路3 由中间至两边找回数 思路4 Manacher's algorithm 线性时间 参考文档 题目 链接 给定一个字符串 s,找到 s 中最长 ...
- LeetCode 10. Regular Expression Matching python特性、动态规划、递归
前言 本文主要提供三种不同的解法,分别是利用python的特性.动态规划.递归方法解决这个问题 使用python正则属性 import reclass Solution2:# @return a bo ...
- leetcode Longest Substring with At Most Two Distinct Characters 滑动窗口法
题目解析 代码如下 题目解析 这一题是一道会员的题目,题目介绍如下: Given a string, find the length of the longest substring T that c ...
- leetcode 3. Longest Substring Without Repeating Characters 最长非重复子串的长度 滑动窗口法
题目链接 根据我们之前介绍的滑动窗口法的解法: 滑动窗口法详解 leetcode 438. Find All Anagrams in a String 滑动窗口法 这题,我们不难解决,使用之前的模板. ...
- leetcode:2680 Remove Duplicates from Sorted Array 删除数组中的重复元素
leetcode:26 对数组元素进行去重,使得原数组重复元素最多保留1个 限制: 我们不可以额外分配数组,必须保持空间复杂度为O(1) 这个并不难实现: class Solution(object) ...
- LeetCode简单题之二进制表示中质数个计算置位
题目 给你两个整数 left 和 right ,在闭区间 [left, right] 范围内,统计并返回 计算置位位数为质数 的整数个数. 计算置位位数 就是二进制表示中 1 的个数. 例如, 21 ...
- LeetCode简单题之删除字符使字符串变好
题目 一个字符串如果没有 三个连续 相同字符,那么它就是一个 好字符串 . 给你一个字符串 s ,请你从 s 删除 最少 的字符,使它变成一个 好字符串 . 请你返回删除后的字符串.题目数据保证答案总 ...
- LeetCode简单题之找出两数组的不同
题目 给你两个下标从 0 开始的整数数组 nums1 和 nums2 ,请你返回一个长度为 2 的列表 answer ,其中: answer[0] 是 nums1 中所有 不 存在于 nums2 中的 ...
- LeetCode中等题之区域和检索 - 数组可修改
题目 给你一个数组 nums ,请你完成两类查询. 其中一类查询要求 更新 数组 nums 下标对应的值 另一类查询要求返回数组 nums 中索引 left 和索引 right 之间( 包含 )的nu ...
最新文章
- 告别低分辨率网络,微软提出高分辨率深度神经网络HRNet | CVPR 2019
- SalttSack自动化运维(二)——环境安装及部署
- 零基础自学python的app-零基础初学Python,需要装什么软件?
- 计算机义务维修队,我院捷诚义务维修服务队电脑维修服务活动
- Dubbo 版 Swagger 来啦!Dubbo-Api-Docs 发布
- HDU多校1 - 6955 Xor sum(字典树+贪心)
- 结构为键值的map_在Java中增加Map值的最有效方法-只需搜索键一次
- MongoDB初学者教程
- 实验12 编写0号中断的处理程序
- Oracle 并行查询
- vue设置输入框输入长度_vue输入框限制字符串长度和输入内容实时验证的实现方式...
- 个人课中所学vlan相关知识整理
- Selenium处理Select控件
- 「leetcode」本周小结!(回溯算法系列一)
- WingPro 8 for Mac(专业Python IDE开发工具)
- 基于GIS技术的智慧城市数字底盘(时空大数据平台)
- A级学科计算机技术,东南大学a类学科排名!附东大a类学科名单
- McAfee软件下载与安装
- Microsoft Visual C++ 6.0预处理器参考手册
- 全球海底光缆及我国海底光缆分布
热门文章
- 不要小看日本的AI公司
- 腾讯AI又搞出大动作:Robotics X机器人实验室成立,签Nature办新AI大会
- 牵手大众、现代,滴滴绯闻“女友”Aurora无人车启动商业化
- 谷歌Launchpad Studio瞄准医疗领域,从早期公司吸取行业经验
- eclipse注释中插入当前时间
- 用keepalived配置高可用,监控NGINX服务
- 如何让Android手机远离间谍软件?看这里
- R和Tableau平行坐标图
- MySQL之父Michael Wideneus:有自己的电脑,我可以做任何事情
- CSS子元素居中(父元素宽高已知,子元素未知)