weixin_42853935 2022-09-26 11:35 采纳率: 85.7%
浏览 157
已结题

SQL如图计算周数据加权平均统计

img


如图,其实数据一直有从 2021/6/1 到 现在每日都会更新新的数据

想求出 按每周统计的话,计算出该表的数据 每一周,例如选取 - 周日 每7天的 客户X的一周7天内的【加权平均价格】 和 【简单平均到货量】。

结果例如(数据是虚拟的方便示意):
可以按下方数据以每周日为一周的结算条件,周日的日期为key

img

  • 写回答

6条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-09-26 13:27
    关注
    --创建测试数据
    create table test_20220926 (日期 date,
    客户a实际到货量 int,客户a需求量 int,
    客户b实际到货量 int,客户b需求量 int,
    客户c实际到货量 int,客户c需求量 int,
    客户a价格 int,客户b价格 int,客户c价格 int);
    insert into test_20220926 values ('2021/8/21',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/22',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/23',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/24',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/25',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/26',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/27',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/28',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    insert into test_20220926 values ('2021/8/29',1125,2500,8400,8000,2400,5000,3500,4600,5400);
    
    
    --确认当前设置的一周第一天是周几
    select @@DATEFIRST;
    --如果不是周一,则设置成周一
    SET DATEFIRST 1;
    --查询
    select max(日期) 日期, 
    sum(客户a实际到货量)/7 客户a周平均到货量,
    sum(客户a需求量)/7 客户a周平均需求量,
    sum(客户a实际到货量*客户a价格)/sum(客户a实际到货量) 客户a加权平均价,
    sum(客户b实际到货量)/7 客户b周平均到货量,
    sum(客户b需求量)/7 客户b周平均需求量,
    sum(客户b实际到货量*客户b价格)/sum(客户b实际到货量) 客户b加权平均价,
    sum(客户c实际到货量)/7 客户c周平均到货量,
    sum(客户c需求量)/7 客户c周平均需求量,
    sum(客户c实际到货量*客户c价格)/sum(客户c实际到货量) 客户c加权平均价
    from test_20220926 t group by datepart(wk,日期);
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 10月4日
  • 已采纳回答 9月26日
  • 赞助了问题酬金50元 9月26日
  • 创建了问题 9月26日

悬赏问题

  • ¥15 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下!
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证