我有2列Service_date
和Modify_date
在同一张表中,我想知道直到 modify 为止经过5天的记录的数量,以及未通过的记录的数量,以及未通过的记录的百分比
想要的输出:
(通过5天的记录数)| (未通过5天的记录数)| (未通过5天的记录的百分比百分比)
答案 0 :(得分:1)
如果仅考虑Service_date
,则
select count(case when Service_date > trunc(sysdate) - 5 then 1 end ) as new_records,
count(case when Service_date <= trunc(sysdate) - 5 then 1 end ) as old_records,
100*(count(case when Service_date > trunc(sysdate) - 5 then 1 end ) / count(*))
as percentage_for_new
from maintenance;
会提供您想要的东西,但是我认为您需要旧记录的开始日期。 Modify_date
可以用相同的方式考虑。