zquery/V1/Request/PUMA/Dito/traffic_vs_avail.sql

97 lines
5.9 KiB
SQL

with master as (select '2G' as tech
, m.datetime
, m.date
, n.site_id
, n.cell_name
, n.lac
, n.ci
, ndp(sum(num_tch_availability), sum(denum_tch_availability)) as availability
, case
when ndp(sum(num_tch_availability), sum(denum_tch_availability)) > 95 then 1
else 0 end as avail_flag_95
, case
when ndp(sum(num_tch_availability), sum(denum_tch_availability)) > 90 then 1
else 0 end as avail_flag_90
, sum(tch_traffic_erlang) as traffic
, case when sum(tch_traffic_erlang) = 0 then 1 else 0 end as traffic_flag
, sum(payload_mbyte) as payload_mbyte
, case when sum(payload_mbyte) = 0 then 1 else 0 end as payload_mbyte_flag
, avg(data_integrity) as data_integrity
from r11.meas_2g_hourly m
join network_cell n on m.network_cell_id = n.id
where date between '2023-12-01' and current_date
and n.site_id in
('COK119', 'JAP032', 'JAP187', 'KRG001', 'KRG003', 'KRG004', 'MUL001', 'MUL006', 'MUL053', 'SMI008', 'SMI024', 'SMI013', 'SMI015', 'SMI016', 'WAM010', 'WAM012', 'WAM020', 'BIA012', 'BIA040',
'BTW002', 'BTW003', 'ENT008', 'ENT010', 'SMI007', 'JAP051', 'JAP031', 'WRS008', 'JAP022', 'JAP115', 'WRS005', 'JAP011', 'JAP013', 'JAP045', 'JAP047', 'JAP054', 'JAP009', 'WRS002', 'JAP041',
'WRS003', 'JAP008', 'JAP070', 'WRS004', 'WAM001', 'JAP060', 'JAP040', 'WAM007', 'JAP090', 'SMI004', 'JAP028', 'WRS001', 'JAP015', 'WAM002', 'WRS009', 'JAP646', 'SMI129', 'SMI128', 'SMI131',
'SMI040')
group by m.datetime
, m.date
, n.site_id
, n.cell_name
, n.lac
, n.ci
union
select '4G' as tech
, m.datetime
, m.date
, n.site_id
, n.cell_name
, n.lac
, n.ci as ci
, ndp(sum(cell_availability_num), sum(cell_availability_denum)) as availability
, case
when ndp(sum(cell_availability_num), sum(cell_availability_denum)) > 95 then 1
else 0 end as avail_flag_95
, case
when ndp(sum(cell_availability_num), sum(cell_availability_denum)) > 90 then 1
else 0 end as avail_flag_90
, sum(volte_traffic_erl) as traffic
, case when sum(volte_traffic_erl) = 0 then 1 else 0 end as traffic_flag
, sum(payload_mbyte) as payload_mbyte
, case when sum(payload_mbyte) = 0 then 1 else 0 end as payload_mbyte_flag
, avg(data_integrity) as data_integrity
from r11.meas_4g_hourly m
join network_cell n on m.network_cell_id = n.id
where date between '2023-12-01' and current_date
and n.site_id in
('COK119', 'JAP032', 'JAP187', 'KRG001', 'KRG003', 'KRG004', 'MUL001', 'MUL006', 'MUL053', 'SMI008', 'SMI024', 'SMI013', 'SMI015', 'SMI016', 'WAM010', 'WAM012', 'WAM020', 'BIA012', 'BIA040',
'BTW002', 'BTW003', 'ENT008', 'ENT010', 'SMI007', 'JAP051', 'JAP031', 'WRS008', 'JAP022', 'JAP115', 'WRS005', 'JAP011', 'JAP013', 'JAP045', 'JAP047', 'JAP054', 'JAP009', 'WRS002', 'JAP041',
'WRS003', 'JAP008', 'JAP070', 'WRS004', 'WAM001', 'JAP060', 'JAP040', 'WAM007', 'JAP090', 'SMI004', 'JAP028', 'WRS001', 'JAP015', 'WAM002', 'WRS009', 'JAP646', 'SMI129', 'SMI128', 'SMI131',
'SMI040')
group by m.datetime
, m.date
, n.site_id
, n.cell_name
, n.lac
, n.ci),
daily as (select tech
, date
, site_id
, cell_name
, lac
, ci
, avg(availability)::numeric(100, 2) as avail
, sum(traffic)::numeric(100, 2) as traffic
, sum(payload_mbyte)::numeric(100, 2) as payload_mbyte
, sum(avail_flag_95) as count_avail_gt_95
, sum(avail_flag_90) as count_avail_gt_90
, sum(traffic_flag) as count_traffic_eq_0
, sum(payload_mbyte_flag) as count_payload_mbyte_eq_0
, avg(data_integrity) as data_integrity
from master
group by tech
, date
, site_id
, cell_name
, lac
, ci)
select *
from daily
order by tech, cell_name, date
;