sql - 关于竞争对手和排名的 SQL 查询
问题描述
我真的很茫然,没有一个好的标题,欢迎提出建议。
我有两张表,一张是竞争对手的表,另一张是三个字段的表
- 事件
- 竞争者
- 放置 - 代表他们在给定事件中获得的位置的数字
我的目标是,给定一组名次,让所有在任何赛事中至少获得一次名次的参赛者归还。
因此,例如,我可能想查看所有在某事上排名第一或第二的竞争对手。
解决方案
不确定你的表是如何定义的但可以试试这个 sql
SELECT
c.id,
e.event,
e.placing
FROM competitor_table c
LEFT JOIN event_table e
ON e.competitor_id = c.id
WHERE e.placing in (placings_set)
GROUP BY c.id,e.event, e.placing
推荐阅读
- asp.net-mvc - 从重载的AuthorizeAttribute的AuthorizeCore中获取partialview actionname和controllername
- scala - Flink 窗口和延迟事件
- javascript - 为什么状态没有正确更新?
- amazon-web-services - Alexa 与 AWS:AskSdk.S3PersistenceAdapter 错误无法读取项目
- javascript - 如何将普通的 JS 数组转换为 JSON 对象
- node.js - 使用 DISTINCT 对 fn ARRAY_AGG 进行续集
- apache - Python3.9 flask apache 2.4 modwsgi 给出 RuntimeError: fork not supported for subinterpreters
- javascript - Gatsby build fails with keycloak (@react-keycloak/web)
- c# - OpenCVSharp - 比较图像 - Sift/Surf/Hash/Orb
- python - 即使我有最新的 PyAudio,PyAudio 也会出错