select语句中的MySQL循环?
我有一个表,它记录了关于IDs完成的任务的各种信息。 该表如下所示: ID Mark ------Date 1 50 -----03/08/2012 1 60 -----01/07/2012 2 40 -----05/08/2012 2 50 -----02/07/2012 .... etc 但这都是手工操作的,如果我想把时间缩小到几周,手动更改日期需要时间(而且几乎不可能在一天之内完成) 有没有一种方法可以在MySQL中进行某种循环或类似的操作,我可以在几天内(1、7或30等)更改开始/结束值和所需的间隔 谢谢,,select语句中的MySQL循环?,mysql,select,loops,split,Mysql,Select,Loops,Split,我有一个表,它记录了关于IDs完成的任务的各种信息。 该表如下所示: ID Mark ------Date 1 50 -----03/08/2012 1 60 -----01/07/2012 2 40 -----05/08/2012 2 50 -----02/07/2012 .... etc 但这都是手工操作的,如果我想把时间缩小到几周,手动更改日期需要时间(而且几乎不可能在一天之内完成) 有没有一种方法可以在MySQL中进行某种循环或类似的操作,我可以在几天内(1、7或
不要使用存储过程:您可以将这些日期作为输入参数。关于透视表,请选中:和 ID Marks_In_Jul ---Marks_In_Aug 1 -------60 -----------------50 2 -------50 -----------------40
SELECT
id,
sum(if(date BETWEEN '2011-07-01' AND '2011-07-31', mark,0)) as Marks_In_Jul,
sum(if(date BETWEEN '2011-08-01' AND '2011-08-31', mark,0)) as Marks_In_Aug,
...
GROUP BY id;
.... etc