2017-08-08 76 views
1

我如何平均SQL内最近6个月的销售额?根据期间和年份,我如何平均SQL内最近6个月的销售额?

这里是我的表和字段:

IM_ItemWhseHistoryByPeriod.FISCALCALPERIOD, 
IM_ItemWhseHistoryByPeriod.FISCALCALYEAR, 

,我需要平均这些领域

IM_ItemWhseHistoryByPeriod.DOLLARSSOLD, 
IM_ItemWhseHistoryByPeriod.QUANTITYSOLD, 

我有是了解如何以平均的最后一个整6个月艰难的部分,即。 fsicalcalperiod 2-6(2017财政年度内)。

我希望对SQL命令文本应该看起来像一些帮助,因为我是非常新的操纵UI以外的SQL。

Sample Data

我现有的SQL字符串:

SELECT IM_ItemWhseHistoryByPeriod.ITEMCODE, 
IM_ItemWhseHistoryByPeriod.DOLLARSSOLD, 
IM_ItemWhseHistoryByPeriod.QUANTITYSOLD, 
IM_ItemWhseHistoryByPeriod.FISCALCALPERIOD, 
IM_ItemWhseHistoryByPeriod.FISCALCALYEAR 
FROM MAS_AME.dbo.IM_ItemWhseHistoryByPeriod 
IM_ItemWhseHistoryByPeriod 

ScaisEdge Attempt #1

+0

您是否正在寻找从当前日期的最近6个月的时候查询运行? – squillman

+1

显示适当的数据样本(包含数据类型)和预期结果。 – scaisEdge

+0

我同意你使用scaisEdge,如果需要超过他的回答,应该包含样本数据和预期结果。 AVG()是一个简单的平均函数,适用于大多数情况,但如果数据集不包含日常事务呢?例如。如果一个商店是开放的,但不卖东西,并且表中没有条目,那么你需要包括一个0天的销售,然后平均?对于这类问题,这些类型的细微差别非常重要。 – Matt

回答

0

如果fiscalyear和fiscalperiod的号码,你可以使用

select avg(IM_ItemWhseHistoryByPeriod.DOLLARSSOLD) , 
     avg(IM_ItemWhseHistoryByPeriod.QUANTITYSOLD) 
    from my_table 
    where IM_ItemWhseHistoryByPeriod.FISCALCALYEAR = 2017 
    and IM_ItemWhseHistoryByPeriod.FISCALCALPERIOD between 2 and 6 

或每个项目代码

select itemcode, avg(IM_ItemWhseHistoryByPeriod.DOLLARSSOLD) , 
     avg(IM_ItemWhseHistoryByPeriod.QUANTITYSOLD) 
    from my_table 
    where IM_ItemWhseHistoryByPeriod.FISCALCALYEAR = 2017 
    and IM_ItemWhseHistoryByPeriod.FISCALCALPERIOD between 2 and 6 
    group by itemcode 
+0

看起来像它没有工作,我给这个尝试的主要问题添加了一张图片。 –

+0

告诉我错误请。.. .anyway答案更新丢失) – scaisEdge

+0

答案更新组按条目代码 – scaisEdge

0

尝试以下解决方案,看看它是否适合你:

select avg(DOLLARSSOLD) as AvgDollarSod, 
     avg(QUANTITYSOLD) as AvgQtySold 
    from IM_ItemWhseHistoryByPeriod 
    where FISCALCALYEAR = '2017 
    and FISCALCALPERIOD between 2 and 6 
相关问题