2012-10-01 35 views
1

我试着对与时间或周期组数量组数量,我有邻桌如何在一段时间

销售 SALES_DATE 的Sales_item SALES_QUANTITY

,即时通讯做查询它的

SELECT DATE,ITEM,SUM(QUANTITY) 
FROM SALES 
WHERE DATE BETWEEN "DATE1" AND "DATE2"; 

问题是,我不需要日期出现,如果我寻找10月的销售,它应该出现10月的总和,而不显示日期...谢谢你很muc您的帮助^ h

例: 我能得到什么?

DATE   ITEM    SALES 
2012-06-12 14152    7 
2012-06-14 14152    15 
2012-06-16 14157    25 

我需要的:查询06-12和06-16之间

ITEM   SALES 
14152  22 
14157  25 

非常感谢你

回答

1

如果您想要按月份计算总和,可以通过表达式将其包括在组中。这里有一种方法:

SELECT extract(year from DATE) as yr, extract(month from date) as mon, ITEM, SUM(QUANTITY) 
FROM SALES 
WHERE DATE BETWEEN "DATE1" AND "DATE2" 
group by extract(year from DATE), extract(month from date) 
order by 1, 2 

虽然extract是标准的SQL,不是所有的数据库都支持它。例如,您可以在Oracle中使用to_char(date, 'YYYY-MM')或在SQL Server中使用datepart(month, date)

+0

非常感谢戈登我只是试过它,非常感谢你:) – Washu