1. 程式人生 > >CAD庫中統計PBN運行航路條數和總距離

CAD庫中統計PBN運行航路條數和總距離

sum nbsp 距離 類型 where -1 left join int type

select ‘PBN運行航路‘ 類型, fb.b 總條數, fa.a 總距離 from
(
select sum(s) a from (
select distinct f4.airway_point1,f4.airway_point2, f4.kilometer_distance S from airway f1, airway_segment_point f2,airway_segment_point f3, segment f4
where
f1.chart_type_id=3 and
f1.airway_id =f2.airway_id and
f1.airway_id =f3.airway_id and
f2.airway_seq=f3.airway_seq-1 and
(
(f2.airway_point_id =f4.airway_point1 and f3.airway_point_id =f4.airway_point2) or
(f2.airway_point_id =f4.airway_point2 and f3.airway_point_id =f4.airway_point1)
) and f1.airway_rnp is not null
) tm
) fa
left join
(select count(*) b from airway where airway_rnp is not null and chart_type_id=3 ) fb
on 1=1

純PBN代號航路

select ‘PBN代號航路‘ 類型, fb.b 總條數, fa.a 總距離 from
(
select sum(s) a from (
select distinct f4.airway_point1,f4.airway_point2, f4.kilometer_distance S from airway f1, airway_segment_point f2,airway_segment_point f3, segment f4
where
f1.chart_type_id=3 and
f1.airway_id =f2.airway_id and
f1.airway_id =f3.airway_id and
f2.airway_seq=f3.airway_seq-1 and
(
(f2.airway_point_id =f4.airway_point1 and f3.airway_point_id =f4.airway_point2) or
(f2.airway_point_id =f4.airway_point2 and f3.airway_point_id =f4.airway_point1)
) and f1.airway_type_id in (2,5,8)
) tm
) fa
left join
(select count(*) b from airway where airway_type_id in (2,5,8) and chart_type_id=3 ) fb
on 1=1

CAD庫中統計PBN運行航路條數和總距離