通过多个变量在SAS中垂直求和

时间:2014-04-13 19:07:40

标签: sql sum sas

我目前正在处理一个数据集,其中包括300周内多个商店的销售情况。每周和商店组合包含多个需要汇总的项目。不知何故,我需要为每个商店找到每周所有商品的销售总额,并将其输出到数据集。我尝试过使用proc sql,但无法按周和商店对其进行排序。任何帮助都将非常感激。

2 个答案:

答案 0 :(得分:3)

SAS-sy解决方案是PROC MEANS

proc means data=have;
class location week;
var sales;
output out=want sum(sales)=;
run;

答案 1 :(得分:1)

这应该有效:

假设:

  1. 您的数据库是SQL Server(您没有在问题中指定数据库)
  2. 您的位置字段名为location_id。
  3. 您的日期字段称为日期字段,它是日期数据类型。
  4. 您的金额字段称为销售。
  5. 您的表名为tbl。
  6. (根据需要更换)

    select location_id,
           concat(datepart(yyyy, datefield), '-', datepart(wk, datefield)) as weekofyr,
           sum(sales) as sum_sales
      from tbl
     group by location_id,
              concat(datepart(yyyy, datefield), '-', datepart(wk, datefield))