嗨,我正在处理数据,主要取决于一周中的哪一天。数据在表格中格式化日期 - 位置 - 计数/数字。有多个不同的位置。我能够使用一周中的每一天对我的数据进行排序。
select MOD(to_char(time, 'J'),7),
sum(COUNT))
from TABLE
where time > sysdate -x
group by to_char(time, 'J')
order by to_char(time, 'J');
这会根据星期几输出每日总和。
现在,我能够获得一年中一周中某一天的平均值。此代码仅输出周日的平均值
SELECT AVG(asset_sums)
FROM (
select MOD(to_char(time, 'J'),7),
sum(COUNT)) as asset_sums
from table
where time > sysdate -365
and MOD(TO_CHAR(time, 'J'), 7) + 1 IN (7)
group by to_char(time, 'J')
order by to_char(time, 'J')
);
我的目标是能够获得一个表格,其中包含与一周中特定日期的年平均值相比的每日总和。例如,星期一的年平均数是 57,星期二是 60。这周我的星期一是 59,星期二是 57。表格的输出是星期一 +2,星期二 -3。什么是最简单/最有效的方法?谢谢你的帮助。
编辑:我的数据格式
日期:yyyy-mm-dd | 地点 : xxxx | 客户数量 0 到 10000
2013-09-16 | AAAA | 1534 2013-09-16 | AAAB | 534 2013-09-17 | AAAA | 1434 2013-09-17 | AAAC | 834 2013-09-18 | AAAA | 134 2013-09-18 | AAAD | 183
需要的输出
2013-09-16 | 星期几 | 总和 | 今年平均周一 | 差值总和
2013-09-16 | 1 (= 星期一) | 2068 | 2015| 53