我一直试图找到相关的东西但不能。 我有一个问题,我需要产生一些可用性百分比。我有一张桌子,其中包括正在发生的事件,我设法在它们发生的那天计算它们,但我发现了一个问题来计算一个季度或一年中的工作时间总数。
每周的每一天都有不同的重量。
基本上我的问题是:我可以不用那个月/年的所有日期制作一张表吗?
数据的一个例子:
ID DATE duration Environment
1 23/10/15 25 a
2 15/01/15 50 b
3 01/01/15 43 c
8 05/06/14 7 b
它可以通过计算字段或只是一般查询来获取信息。
答案 0 :(得分:0)
WITH t AS
(SELECT to_date('01-01-2015', 'mm-dd-yyyy') + level - 1 AS dt,
NULL AS duration
FROM dual
CONNECT BY level < = 10
),
t1 AS
(
SELECT to_date('10/01/15', 'dd-mm-yy') as dt, 50 as duration FROM dual
UNION ALL
SELECT to_date('01/01/15', 'dd-mm-yy'), 43 FROM dual
UNION ALL
SELECT to_date('06/01/15', 'dd-mm-yy'), 43 FROM dual
)
SELECT t.dt,
NVL(NVL(t1.duration, t.duration),0) duration
FROM t,
t1
WHERE t.dt = t1.dt(+)
ORDER BY dt
结果
DT Duration
01-JAN-15 43
02-JAN-15 0
03-JAN-15 0
04-JAN-15 0
05-JAN-15 0
06-JAN-15 43
07-JAN-15 0
08-JAN-15 0
09-JAN-15 0
10-JAN-15 50
答案 1 :(得分:0)
这是我的意图,以及下面的完整答案。
echo "++++ working at : " `pwd`