我有这样的表:
DROP TABLE IF EXISTS my_table;
CREATE TABLE my_table
(date DATE NOT NULL PRIMARY KEY
,incoming INT NOT NULL
,closed INT NOT NULL
,outstanding INT NOT NULL
);
INSERT INTO my_table VALUES
('2013-02-01' ,1448 ,1309 ,14914),
('2013-03-01' ,1458 ,1492 ,14880),
('2013-04-01' ,1392 ,1439 ,14833),
('2013-05-01' ,1367 ,1273 ,14927),
('2013-06-01' ,1331 ,1240 ,15018),
('2013-07-01' ,1410 ,1336 ,15092),
('2013-08-01' ,1284 ,1418 ,14958),
('2013-09-01' ,1210 ,1286 ,14882),
('2013-10-01' ,1158 ,1067 ,14973),
('2013-11-01' ,989 ,1018 ,14944),
('2013-12-01' ,791 ,932 ,14803),
('2014-01-01' ,637 ,956 ,14484);
如何使用mysql查询计算12个月13周的平均表格当前日期?
我想要这样的结果
quarter incoming closed outstanding
-------------------------------------
Q1 1416 1425 1460
Q2 1308 1345 1530
Q3 751 950 1412
Q4 825 945 1420
提前致谢
答案 0 :(得分:0)
感谢您的所有建议。我找到了答案。也许对其他人有帮助。
从my_table中选择'Q1'quter,AVG(传入),AVG(突出),AVG(已关闭),其中日期BETWEEN DATE_ADD(CURDATE(),INTERVAL -12 MONTH)和DATE_ADD(CURDATE(),INTERVAL -9 MONTH ) 联盟 从my_table中选择'Q2',AVG(传入),AVG(突出),AVG(已关闭) 其中日期BETWEEN DATE_ADD(CURDATE(),INTERVAL -9 MONTH)和DATE_ADD(CURDATE(),INTERVAL -6 MONTH) 联盟 从my_table中选择'Q3',AVG(传入),AVG(突出),AVG(已关闭) 其中日期BETWEEN DATE_ADD(CURDATE(),INTERVAL -6 MONTH)和DATE_ADD(CURDATE(),INTERVAL -3 MONTH) 联盟 从my_table中选择'Q4',AVG(传入),AVG(突出),AVG(已关闭) 其中日期BETWEEN DATE_SUB(CURDATE(),INTERVAL 3 MONTH)和CURDATE()