首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >列出钓鱼位置的复杂MySQL语句?

列出钓鱼位置的复杂MySQL语句?
EN

Stack Overflow用户
提问于 2014-01-14 14:57:22
回答 1查看 48关注 0票数 0

我正在试着用多个表做一个排行榜。一张表记录参加的会议,每次会议计分为5分,另一张表记录锦标赛的结果。这是一个钓鱼俱乐部的网站。

到目前为止,我有以下内容,可以按顺序显示交汇点,但锦标赛结果与此不同。我想找一个简单但复杂的SQL语句来列出当前的排名。

我需要显示垂钓者的名字,我可以从一个不同的表中单独抓取,然后每个月的5点列出的比赛结果金额从结果表,这些都是相加,最终列出从所有锦标赛和会议的总数。

代码语言:javascript
运行
复制
SELECT aid, sum(here*5) as total 
FROM rollcall GROUP BY aid ORDER BY total DESC

SELECT aid, weight, weight-penalty as fweight 
FROM `results` where tid=2 order by fweight desc

下面是一个例子:

代码语言:javascript
运行
复制
  place angler  JAN  FEB MARCH ... Total Points

  1 name1 5 50 5 45  0 38       143

  2 name2 5 49 5 47  5 31       142

..。

这一点很清楚吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-14 15:27:53

如果您构建的查询是这样的,那会怎么样呢?

代码语言:javascript
运行
复制
SELECT aid, 
sum(SELECT count(1) from meetings WHERE MONTH(columndatetime) = 1 * 5) AS JAN,
sum(SELECT count(1) from meetings WHERE MONTH(columndatetime) = 2 * 5) AS FEB,
/
 -- add same logic to the rest of the months
/
sum(SELECT count(1) from meetings WHERE YEAR(columndatetime) = 2013 * 5) as total 
FROM rollcall GROUP BY aid ORDER BY total DESC

其中columndatetime是您的列的名称,其中包含会议等的日期和时间。

最后一个是这一年的全部。

这对你有帮助吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21107599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档