我正在尝试使用多个表格制作排名图表。一个会议记录会议,每个会议计为5分,另一个表跟踪比赛结果。这是一个钓鱼俱乐部网站。
到目前为止,我有以下内容,可以按顺序显示会面点,但比赛结果与之分开。我想找到一个虽然复杂的SQL语句来列出当前的排名。
我需要显示我可以从不同的桌子中分开的垂钓者姓名,然后每个月的5个点与结果表中的锦标赛结果金额一起列出,这些都是最终列出所有锦标赛的总数和会议。
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
所以一个例子是:
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
...
这一点是否清楚?
答案 0 :(得分:0)
如果你构建这样的查询怎么办?
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
是您的列的名称,其中包含会议的日期和时间等...
最后一个全年都需要。
这可以帮到你吗?