LeetCode MySQL 1308. 不同性别每日分数总计(累加/变量/窗口函数)
文章目录
- 1. 题目
- 2. 解题
1. 题目
表: Scores
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| player_name | varchar |
| gender | varchar |
| day | date |
| score_points | int |
+---------------+---------+
(gender, day)是该表的主键
一场比赛是在女队和男队之间举行的
该表的每一行表示一个名叫 (player_name) 性别为 (gender) 的参赛者在某一天获得了 (score_points) 的分数
如果参赛者是女性,那么 gender 列为 ‘F’,
如果参赛者是男性,那么 gender 列为 ‘M’
写一条SQL语句查询每种性别在每一天的总分,并按性别和日期对查询结果排序
下面是查询结果格式的例子:
Scores表:
+-------------+--------+------------+--------------+
| player_name | gender | day | score_points |
+-------------+--------+------------+--------------+
| Aron | F | 2020-01-01 | 17 |
| Alice | F | 2020-01-07 | 23 |
| Bajrang | M | 2020-01-07 | 7 |
| Khali | M | 2019-12-25 | 11 |
| Slaman | M | 2019-12-30 | 13 |
| Joe | M | 2019-12-31 | 3 |
| Jose | M | 2019-12-18 | 2 |
| Priya | F | 2019-12-31 | 23 |
| Priyanka | F | 2019-12-30 | 17 |
+-------------+--------+------------+--------------+
结果表:
+--------+------------+-------+
| gender | day | total |
+--------+------------+-------+
| F | 2019-12-30 | 17 |
| F | 2019-12-31 | 40 |
| F | 2020-01-01 | 57 |
| F | 2020-01-07 | 80 |
| M | 2019-12-18 | 2 |
| M | 2019-12-25 | 13 |
| M | 2019-12-30 | 26 |
| M | 2019-12-31 | 29 |
| M | 2020-01-07 | 36 |
+--------+------------+-------+
女性队伍:
第一天是 2019-12-30,Priyanka 获得 17 分,队伍的总分是 17 分
第二天是 2019-12-31, Priya 获得 23 分,队伍的总分是 40 分
第三天是 2020-01-01, Aron 获得 17 分,队伍的总分是 57 分
第四天是 2020-01-07, Alice 获得 23 分,队伍的总分是 80 分
男性队伍:
第一天是 2019-12-18, Jose 获得 2 分,队伍的总分是 2 分
第二天是 2019-12-25, Khali 获得 11 分,队伍的总分是 13 分
第三天是 2019-12-30, Slaman 获得 13 分,队伍的总分是 26 分
第四天是 2019-12-31, Joe 获得 3 分,队伍的总分是 29 分
第五天是 2020-01-07, Bajrang 获得 7 分,队伍的总分是 36 分
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/running-total-for-different-genders
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
类似题目:LeetCode MySQL 1204. 最后一个能进入电梯的人(累加/变量/窗口函数)
# Write your MySQL query statement below
select s1.gender, s1.day, sum(s2.score_points) total
from Scores s1, Scores s2
where s1.gender = s2.gender and s1.day >= s2.day
group by s1.day, s1.gender
order by s1.gender, s1.day
1104 ms
- 变量法
# Write your MySQL query statement below
select gender, day, case gender when 'F'then @prePointF := @prePointF + score_pointselse @prePointM := @prePointM + score_pointsend as total
from Scores, (select @prePointF := 0, @prePointM := 0) temp
order by gender, day
466 ms
- 窗口函数
# Write your MySQL query statement below
select gender, day, sum(score_points) over (partition by gender order by day) total
from Scores
order by gender, day
549 ms
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode MySQL 1308. 不同性别每日分数总计(累加/变量/窗口函数)相关推荐
- MySql力扣VIP面试题:1308. 不同性别每日分数总计 + 1204. 最后一个能进入电梯的人
转载: 声明:如果我侵犯了任何人的权利,请联系我,我会删除 欢迎高手来喷我 文章目录 1308. 不同性别每日分数总计 题解 1204. 最后一个能进入电梯的人 题解 1308. 不同性别每日分数总计 ...
- 【每日SQL打卡】DAY 25丨不同性别每日分数总计【难度中等】
[未来的你,会感谢今天努力的你]每日两题,一难一易,每天进步一点点,可能会直接导致一场面试的成功,或工作的轻松搞定,从而升职加薪迎娶白富美,加油小伙伴!
- LeetCode MySQL 1204. 最后一个能进入电梯的人(累加/变量/窗口函数)
文章目录 1. 题目 2. 解题 1. 题目 表: Queue +-------------+---------+ | Column Name | Type | +-------------+---- ...
- LeetCode MySQL解题目录
已完成的 LeetCode MySQL 数据库题目.点击查看我的 LeetCode 算法解题目录. 已解决 123/123 - 简单 54 中等 51 困难 18 前置入门学习 MySQL 基本查询. ...
- 【LeetCode】2022 7月 每日一题
[LeetCode]2022 7月 每日一题 前言 七月太忙了,又是项目又是练车又是各种比赛.大概有10天的每日一题没有当天写完(虽然后面补上了). 将每日一题的所有思路记录在这里分享一下. 7.1 ...
- mysql不同分数的人数,mysql如何统计每个专业分数段的人数
mysql如何统计每个专业分数段的人数 发布时间:2020-03-20 15:02:26 来源:亿速云 阅读:532 作者:小新 mysql如何统计每个专业分数段的人数的呢?下面由亿速云小编给大家详细 ...
- 《C语言及程序设计》实践参考——分数的累加
返回:贺老师课程教学链接 项目要求 [项目1:分数的累加] 编程序,输出1/3-3/5+5/7-7/9-+19/21的结果 提示:如果直接解决上面的问题有困难,可以设计一条"由易到难&qu ...
- 《C语言及程序设计》实践參考——分数的累加
返回:贺老师课程教学链接 项目要求 [项目1:分数的累加] 编程序.输出1/3-3/5+5/7-7/9-+19/21的结果 提示:假设直接解决上面的问题有困难.能够设计一条"由易到难&qu ...
- 分数阶累加的Python实现
分数阶累加的Python实现 分数阶累加是分数阶差分的逆运算,它不仅可用于分数阶差分方程的分析 ,也可以用于建立分数阶灰色模型.然而许多初学者在动手实现分数阶灰色模型时经常发现非常困难,究其原因其实是 ...
最新文章
- win10系统80端口被System (PID=4)占用的解决
- python3 数据库操作 orm sqlalchemy 简介
- asp.net错误.在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错...
- ROS系统实现 tf坐标系广播与监听
- P1628 合并序列
- vc++6.0 同步本机时间到Internet NTP服务器 编译通过
- c++ char*转string_CC++|输入输出与内存、缓存、设备文件
- 内置类型存储空间(32位机参考)
- JSF Struts Spring Hibernate 整合
- 根据输入的出生日期计算到今天之间的天数
- .rdlc 文件设置方向_在Word里面怎么设置把字竖着打出来?
- 控制台程序转化为windows服务
- 基于大数据技术推荐系统算法案例实战教程
- 《晨间日记的奇迹》内容概要及读书心得
- 运放输入偏置电流方向_运算放大器+仪表放大器:如何为偏置电流提供直流回路?...
- AM437X系列编译环境搭建
- [转]中国古代兵事纵横谈[强文]
- HBuilder开发App教程
- 18.8.17 考试总结
- jquery实现图片拖动
热门文章
- 【机器学习】XGBoost集成算法——(理论+图解+python代码比较其他算法使用天池蒸汽数据)
- All-In-One Code Framework [一站式示例代码库] 【转】
- LeetCode872. Leaf-Similar Trees
- 织梦文章添加字段填栏目id,内容页调用字段里的栏目文章
- 微信小程序-音频播放-wx.createInnerAudioContext() 每次都是重复播放同一条录音
- python开发【基础二】
- 逆袭之旅.DAY08东软实训.多态~
- 用MS SQL Server事件探查器来跟踪数据库的操作
- 哇、、、、C++ 实现单向链表
- C语言结构体用法很多,坑也很多