SQL需要:每月
求和值我有价值观像这样的表:SQL需要:每月
count1 count2 count3 month
12 1 4 01/12/2011
6 5 4 23/12/2011
14 6 9 11/06/2011
8 5 4 19/06/2011
我如何得到下面的结果?
count1 count2 count3 month
18 6 8 12
22 11 13 06
SELECT SUM(count1), SUM(count2), SUM(count3), MONTH(month)
FROM myTable
GROUP BY MONTH(month)
由于MONTH
是SQL Server的关键字,你可能逃跑的列名month
(例如[month]
),如果日期列真的叫这样的。 (!感谢恩迪为评论)
此外,如果选择数据的时间跨度超过一年,你可能需要按年度和:
SELECT SUM(count1), SUM(count2), SUM(count3), MONTH(month), YEAR(month)
FROM myTable
GROUP BY MONTH(month), YEAR(month)
您可能想将该列名转换为[月] – 2011-04-21 08:03:17
@AndriyM:感谢您的编辑! – Heinzi 2012-10-16 14:15:34
SELECT SUM(count1), SUM(count2), SUM(count3), MONTH(month)
FROM Table
GROUP BY trunc(month,'mm')
这将在PL运行/ SQL开发人员:)
但它不会在SQL Server上运行,这正是他正在使用的(根据标签)。 – 2011-04-21 08:05:47
ya mike ..可能会不会.. :) – Avi 2011-04-21 08:25:26
但是,获得PL/SQL的日常剂量总是很好的,谢谢! – 2011-04-21 08:33:40
减少查询负担
SELECT SUM(count1), SUM(count2), SUM(count3), substring(month,4,2)
FROM myTable
GROUP BY substring(month,4,2)
什么discrimin ator在这里?第二组结果与第二组结果有什么不同,是月份列或其他内容? – 2011-04-21 08:00:44
请给出您的结果表的例子,关于第一个表。所以,任何人都可以轻松理解你想要的。 – 2011-04-21 08:01:57