首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用mysql生成统计信息

使用mysql生成统计信息
EN

Stack Overflow用户
提问于 2009-09-27 20:33:18
回答 2查看 899关注 0票数 0

如何编写一条sql语句来返回在过去12个月中每个月有多少students拥有lessons的列表?

因此,我希望输出如下所示:

代码语言:javascript
运行
复制
+--------+----------------+
| Month  | No of Students |
+--------+----------------+
| Oct 08 |  12            |
| ...    |  ...           |
| ...    |  ...           |
| Sep 09 |  15            |
+-------------------------+

编辑:相关模式-

代码语言:javascript
运行
复制
lessons{student_id:INT, time:DATE}
student{id:INT, person_id:INT}

学生可以在一个给定的月份上任意数量的课,所以我对一个月内有多少课不感兴趣,而是对那个月有多少学生上了课感兴趣

EN

Stack Overflow用户

发布于 2009-09-27 20:38:01

代码语言:javascript
运行
复制
CREATE TABLE tmp (student_id int(10), month int(4), year int(4));

INSERT INTO tmp
SELECT DISTINCT student.id, MONTH(time), YEAR(time)
FROM lessons INNER JOIN student ON lessons.student_id = student.id
WHERE PERIOD_ADD(time,12) > NOW();

SELECT count(*) FROM tmp
GROUP BY MONTH(month), YEAR(year);

DROP TABLE tmp;
票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1484408

复制
相关文章

相似问题

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