解決GAT專案Bug:車裝車飾費用管理中的裝飾費統計(車輛)統計資料不對
問題描述:
解決:斷點檢視sql語句,並加上引數執行
發現sql語句統計的不對,nvl2(t2.times, 1, 0),意思是有值為1沒值為0
下面的半句已經可以累積次數了,不需要再nvl2(t2.times, 1, 0) as times
所以修改SQL,直接t2.times
select t1.hostno, t2.times, nvl(t2.cost, 0) as cost
from (select p.hostid, p.hostno
from position_host_info p
left join position_host_info_extend e
on p.hostid = e.hostid
where e.verify_status = 1
and e.process_status <> 4
and e.process_status <> 5
and p.appsysid = 23551
and p.appdeptid = 3) t1
left join
(select p.hostno as hostNo,
t.host_id,
sum(nvl2(t.DECORATE_COST, 1, 0)) as times,
sum(nvl(t.DECORATE_COST, 0)) as cost
from position_host_info p
left join position_host_info_extend e
on p.hostid = e.hostid
left join COST_DECORATE t
on p.hostid = t.host_id
and t.PAYMENT_DATE >= to_date('2017-03-20', 'yyyy-mm-dd')
and t.PAYMENT_DATE <= to_date('2017-03-24', 'yyyy-mm-dd')
where p.appsysid = 23551
and p.appdeptid = 3
and e.verify_status = 1
and e.process_status <> 4
and e.process_status <> 5
and t.apply_status = 11
group by p.hostno, t.host_id) t2
on t1.hostid = t2.host_id
測試OK~~
----------------------------------------------------------------------------------------------------------------------
補充說明:參考停車管理裡面的車輛統計,
select t1.hostno,
nvl(t2.parkTimes, 0) as parkTimes,
nvl(t2.totalParkFee, 0) as totalParkFee
from (select p.hostno, p.hostid
from position_host_info p
where p.status = 1
and (exists (select appsysid, appdeptid
from table(get_subdept(8196, 23551, 3)) f
where p.APPSYSID = f.appsysid
and p.APPDEPTID = f.appdeptid))) t1
left join (select cpf.host_id,
cpf.HOST_NO,
to_char(count(*)) as parkTimes,
to_char(sum(cpf.PARK_FEE)) as totalParkFee
from COST_PARK_FEE cpf
where (exists (select appsysid, appdeptid
from table(get_subdept(8196, 23551, 3)) f
where cpf.APPSYSID = f.appsysid
and cpf.APPDEPTID = f.appdeptid))
and cpf.PAY_DATE >= to_date('2017-03-20', 'yyyy-mm-dd')
and cpf.PAY_DATE <= to_date('2017-03-31', 'yyyy-mm-dd')
and cpf.fee_verify = 1
group by cpf.host_id, cpf.HOST_NO) t2
on t1.hostid = t2.host_id
所以上面的裝飾費統計(車輛)sql改為:
select t1.hostno, nvl(t2.times,0) as times, nvl(t2.cost, 0) as cost
from (select p.hostid, p.hostno
from position_host_info p
left join position_host_info_extend e
on p.hostid = e.hostid
where e.verify_status = 1
and e.process_status <> 4
and e.process_status <> 5
and p.appsysid = 23551
and p.appdeptid = 3) t1
left join (select p.hostno as hostNo,
t.host_id,
sum(nvl2(t.DECORATE_COST, 1, 0)) as times,
sum(nvl(t.DECORATE_COST, 0)) as cost
from position_host_info p
left join position_host_info_extend e
on p.hostid = e.hostid
left join COST_DECORATE t
on p.hostid = t.host_id
and t.PAYMENT_DATE >= to_date('2017-03-20', 'yyyy-mm-dd')
and t.PAYMENT_DATE <= to_date('2017-03-24', 'yyyy-mm-dd')
where p.appsysid = 23551
and p.appdeptid = 3
and e.verify_status = 1
and e.process_status <> 4
and e.process_status <> 5
and t.apply_status = 11
group by p.hostno, t.host_id) t2
on t1.hostid = t2.host_id
程式碼中改成:
測試OK~~
相關文章
- 易泊車牌識別 停車計費系統解決方案
- 高階停車場停車計費解決方案
- 22.【實戰】車輛統計
- 裝飾模式(裝飾設計模式)詳解——小馬同學@Tian設計模式
- 裝飾設計模式設計模式
- Decorator裝飾設計模式設計模式
- 設計模式——裝飾模式設計模式
- 設計模式-裝飾模式設計模式
- 車輛資訊快速查詢API:輕鬆查詢車牌號對應車輛的詳細資料API
- 基於java的企業車輛管理系統的設計與實現Java
- 設計模式專題(七)裝飾器模式設計模式
- 工程車輛車載PLC遠端監控智慧運營系統解決方案
- 裝飾器與後設資料反射(1)方法裝飾器反射
- 設計模式(八)Context中的裝飾者模式設計模式Context
- 原始碼中的設計模式--裝飾器模式原始碼設計模式
- 設計模式——裝飾者模式設計模式
- 設計模式----裝飾器模式設計模式
- 設計模式-裝飾器模式設計模式
- 設計模式-裝飾者模式設計模式
- [設計模式]裝飾者模式設計模式
- [設計模式] 裝飾器模式設計模式
- 裝飾器與後設資料反射(3)引數裝飾器反射
- 智慧停車場解決方案,反向尋車系統解決方案
- 汽車經銷商管理系統解決方案
- 車牌識別相機助力智慧巡檢車路側停車移動計費
- 730【畢設課設】基於STM32的RFID停車場車位車庫管理監測系統設計(全套資料)
- 汽車之家:2020中國汽車消費指南
- 設計模式 | 裝飾者模式及典型應用設計模式
- 聊聊Typescript中的設計模式——裝飾器篇(decorators)TypeScript設計模式
- Python中的裝飾器Python
- 設計模式——從HttpServletRequestWrapper瞭解裝飾者模式設計模式HTTPServletAPP
- 中智車聯:用 TDengine 高效處理車輛運營視覺化管理視覺化
- 汽車電子測試專案管理系統-TPA專案管理
- 中國自行車協會:中國自行車累計出口超10億輛
- 設計模式系列之「裝飾模式」設計模式
- 設計模式--裝飾模式(Decorator Pattern)設計模式
- 小白設計模式:裝飾者模式設計模式
- Python設計模式-裝飾器模式Python設計模式
- 裝飾器設計模式 - Gene Zeiniss設計模式