我有INCIDENT
行表
TICKETID ACTUALFINISH TARGETFINISH
100 2012-03-01 11:11:11 2012-02-01 11:11:11
101 2012-03-01 11:11:11 2012-01-01 11:11:11
102 2012-04-01 11:11:11 2012-06-01 11:11:11
103 2012-05-01 11:11:11 2012-07-01 11:11:11
104 null null
我想要target finish
大于actual finish
和相反的行的百分比。
所以对于这个表结果将是(不涉及空值):
SLA PERCENTAGE
YES 50
NO 50
我编写了 SQL 查询,但我不断收到错误消息。我不知道错误在哪里。
我首先得到的记录总数比 AFis 大于 TF 然后 AF 小于 TF
with HELPTABLE as
(select count(*) as Total
from incident as incident4
where incident4.targetfinish is not null and incident4.actualfinish is not null )
select distinct case when incident.targetfinish>incident.actualfinish then
dec((( select count(*)
from incident as incident1
where incident1.targetfinish is not null and incident1.actualfinish is not null )),10,2)/HELPTABLE.Total*100
when incident.targetfinish<incident.actualfinish then
dec(((select count(*)
from incident as incident2
where incident2.targetfinish is not null and incident2.actualfinish is not null )),10,2)/HELPTABLE.Total*100
end as Percentage,
case when incident.targetfinish>incident.actualfinish then 'Yes'
when incident.targetfinish<incident.actualfinish then 'No'
end as SLA
from incident
where incident.targetfinish is not null and incident.actualfinish is not null
如果有人知道错误是什么谢谢!
[错误代码:-206,SQL 状态:42703] DB2 SQL 错误:SQLCODE=-206,SQLSTATE=42703,SQLERRMC=HELPTABLE.TOTAL,DRIVER=3.57.82)