繁体   English   中英

使用派生字段分组查询

[英]Group by clause query with derived fields

我的表有数量、销售价格和销售日期,我需要推导出销售价格并按月对销售进行分组。 我使用了以下内容,但无法正确使用 group by 子句。

select 
    (QUANTITY*SALEPRICE) as sales,
    DATEPART (month, saledate) as MM
from [dbo].[PETSALE]
GROUP BY DATEPART (month, saledate)

您需要select子句中的聚合 function 使您的语句成为有效的聚合查询。

我会将您的查询表述为:

select 
    sum(quantity * saleprice) as sales,  -- aggregate function
    year(saledate) yyyy,
    month(saledate) mm
from [dbo].[petsale]
group by year(saledate), month(saledate)

请注意,我将销售年份添加到selectgroup by子句中:如果您的数据分布超过 12 个月,您可能不希望将不同年份同一月份的销售额组合在一起。 但如果你这样做,你可以从查询中删除year(saledate)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM