mysql - MySql - 棘手的“分组依据”和计数
问题描述
我正在尝试计算赛季冠军和比赛的数量。一些背景: - 每个锦标赛可以有一场或多场比赛 - 我们的赛季是从 10 月 1 日到 9 月 30 日
冠军表:
ChampID (small int), Name, Startdate (date), +++
比赛表:
CompID(小整数),ChampID(小整数),+++
我知道我也使用左连接,即“左连接竞争 on Competition.champid = Championship.champid”。但我正在努力寻找:
- 按我们的季节分组的表达式
- 计算赛季冠军和比赛的数量
这是我想出的最好的,但赛季冠军和比赛的数量
select DATE_FORMAT(startdate, "%Y") as ChampYear
, count(championship.champid)
, count(competition.compid)
from championship
left
join competition
on competition.champid = championship.champid
GROUP
BY floor(period_diff( DATE_FORMAT(startdate, "%Y%m"), "201910") / 12);
你们中的任何一位专家可以告诉我前进的方向吗?
解决方案
如果您只想计算本赛季的冠军/比赛(开始日期 = 10/2019),一个简单的WHERE
就足够了。
SELECT DATE_FORMAT(startdate, "%Y") as ChampYear, count(championship.champid), count(competition.compid)
FROM championship
LEFT JOIN competition on competition.champid = championship.champid
WHERE DATE_FORMAT(startdate, "%Y%m") = "201910"
推荐阅读
- javascript - 如何等到数据被获取并使用 redux 更新状态
- android - 无法使用标准 firebase 在管理员 firebase 用户下创建用户,因为它已启动当前用户
- php - 在 centos 上从 src 代码编译 PHP5.5 失败
- javascript - 从包含特定字符的字符串中获取单词。(像 # 或 @ 例如一个帖子规划师)
- canvas - 是否可以在画布上为每个操作设置一个过滤器?
- android - Android Studio 更新重复 Java 和 res 文件夹
- typescript - 具有联合类型的类型不存在属性
- wordpress - 带有幽灵类别的 Wordpress 主类别
- umbraco8 - 如何在 HttpHandler 中获取 UmbracoHelper?
- javascript - antd表动作和onrow函数