关于SQL如何循环查询

       我现在有一个需求,想查询21年每个月的一个结果,但是月份每次都需要手动改,然后点击查询,再把结果复制出来后再改到下个月份继续查。。感觉这样很是麻烦,所以有没有一种可以循环查询的方法,毕竟在VBA或Python里这个需求不算啥难题,但是SQL里我还真不太知道该咋使用循环。求大佬帮忙,以下是我写的一个参考程序:

select class,
count(1) as 数量 from data
where ctime='202101'
group by class

 

 第一种可以用数据库的方式来做,比如存储过程,存储函数,来循环, 第二种可以利用外部程序来做,这种就更好了。比如我用的Java,我可以查询出来,直接写到本地。如果需要我可以明天搞一下

参考下这个:https://www.cnblogs.com/guorongtao/p/11939751.html

select class,
count(1) as 数量 from data
where YEAR(ctime) = 2021
group by class, MONTH(ctime) 

有帮助 望采纳 

select MONTH(ctime) as month ,class,count(1) as 数量 
from data
where YEAR(ctime) = 2021
group by class, MONTH(ctime) 

 

你的思路还没有捋清楚,如果是想查询某一年的每个月份对应的数据,直接按照月份分组就可以了。

其实你的需求不具体,简单的理解就是先获取一年的数据量,然后对月份进行聚合不就行了。

如果有其他的限制条件需要补充出来的