NTSB investigations, DC
32 cases where the phase of flight was Enroute.
Cases per year
| 1964 | 1 |
|---|---|
| 1967 | 1 |
| 1969 | 2 |
| 1970 | 1 |
| 1971 | 4 |
| 1972 | 2 |
| 1973 | 2 |
| 1974 | 3 |
| 1977 | 1 |
| 1978 | 2 |
| 1979 | 1 |
| 1980 | 2 |
| 1981 | 1 |
| 1982 | 2 |
| 1984 | 1 |
| 1986 | 1 |
| 1988 | 1 |
| 1989 | 1 |
| 1990 | 1 |
| 1997 | 1 |
| 2017 | 1 |
Where
Latest cases
Query with SQL
duckdb -csv -c "WITH phase_names(main, name) AS (VALUES (100, 'Prior to flight'), (150, 'Standing'), (200, 'Pushback/towing'), (250, 'Taxi'), (300, 'Takeoff'), (350, 'Initial climb'), (400, 'Enroute'), (450, 'Maneuvering'), (500, 'Approach'), (550, 'Landing'), (600, 'Emergency descent'), (650, 'Uncontrolled descent'), (700, 'Post-impact'), (750, 'After landing'), (800, 'Other'), (990, 'Unknown')),
crosswalk(code, main, name) AS (VALUES (500, 150, 'Standing'), (501, 150, 'Standing - pre-flight'), (502, 150, 'Standing - starting engine(s)'), (503, 150, 'Standing - engine(s) operating'), (504, 150, 'Standing - engine(s) not operating'), (505, 150, 'Standing - idling rotors'), (510, 250, 'Taxi'), (511, 200, 'Taxi - pushback/tow'), (512, 250, 'Taxi - to takeoff'), (513, 250, 'Taxi - from landing'), (514, 250, 'Taxi - aerial'), (520, 300, 'Takeoff'), (521, 300, 'Takeoff - roll/run'), (522, 350, 'Takeoff - initial climb'), (523, 300, 'Takeoff - aborted'), (530, 400, 'Climb'), (531, 400, 'Climb - to cruise'), (540, 400, 'Cruise'), (541, 400, 'Cruise - normal'), (542, 400, 'Maneuvering - holding (IFR)'), (550, 400, 'Descent'), (551, 400, 'Descent - normal'), (552, 600, 'Descent - emergency'), (553, 650, 'Descent - uncontrolled'), (560, 500, 'Approach'), (561, 500, 'Approach - VFR pattern - downwind'), (562, 500, 'Approach - VFR pattern - base turn'), (563, 500, 'Approach - VFR pattern - base leg/base to final'), (564, 500, 'Approach - VFR pattern - final approach'), (565, 500, 'Go-around (VFR)'), (566, 500, 'Approach - IAF to FAF/outer marker (IFR)'), (567, 500, 'Approach - FAF/outer marker to threshold (IFR)'), (568, 500, 'Circling (IFR)'), (569, 500, 'Missed approach (IFR)'), (570, 550, 'Landing'), (571, 550, 'Landing - flare/touchdown'), (572, 550, 'Landing - roll'), (573, 550, 'Landing - aborted'), (574, 550, 'Emergency landing'), (575, 550, 'Emergency landing after takeoff'), (576, 600, 'Emergency descent/landing'), (580, 450, 'Maneuvering'), (581, 450, 'Maneuvering - aerial application'), (582, 450, 'Maneuvering - turn to reverse direction'), (583, 450, 'Maneuvering - turn to landing area (emergency)'), (590, 450, 'Hover'), (591, 450, 'Hover - in ground effect'), (592, 450, 'Hover - out of ground effect'), (600, 800, 'Other'), (610, 990, 'Unknown')),
current_codes AS (
SELECT e.case_mkey, TRY_CAST(e.\"tier1Number\" AS INTEGER) AS code,
row_number() OVER (PARTITION BY e.case_mkey ORDER BY coalesce(e.\"isDefiningEvent\", false) DESC, e.position) AS n
FROM 'https://openairdocs.org/data/latest/ntsb_events.parquet' e
WHERE e.aircrafts_position = 1 AND e.\"tier1Number\" GLOB '[1-9][0-9]*'
AND (e.\"isDefiningEvent\" OR e.case_mkey IN (SELECT \"mKey\" FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' WHERE \"isPre1982\"))
),
phases AS (
SELECT case_mkey, 'current' AS scheme, code, CASE WHEN code >= 990 THEN 990 ELSE code // 50 * 50 END AS main
FROM current_codes WHERE n = 1
UNION ALL
SELECT o.case_mkey, 'older', o.\"phaseOfFlightCode\", w.main
FROM 'https://openairdocs.org/data/latest/ntsb_occurrences.parquet' o JOIN crosswalk w ON w.code = o.\"phaseOfFlightCode\"
WHERE o.aircrafts_position = 1 AND o.\"occurrenceNumber\" = 1 AND o.case_mkey NOT IN (SELECT case_mkey FROM current_codes)
),
case_phases AS (
SELECT p.*, c.\"eventDate\", c.\"highestInjuryLevel\" = 'Fatal' AS fatal, a.aircraft_model_code
FROM phases p JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c.\"mKey\" = p.case_mkey
LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = p.case_mkey AND a.position = 1
WHERE c.\"eventDate\" >= DATE '1962-01-01' AND p.main IN (SELECT main FROM phase_names)
)
SELECT c.\"ntsbNumber\", c.\"eventDate\", c.\"eventType\", c.\"eventCity\", c.\"eventStateOrRegion\", a.n_number, a.\"aircraftMake\", a.\"aircraftModel\", c.\"highestInjuryLevel\", c.\"totalFatal\", c.\"completionStatus\", c.report_url
FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = c.\"mKey\" AND a.position = 1
WHERE c.\"eventStateOrRegion\" = 'DC' AND c.\"eventCountry\" = 'USA'
AND c.\"mKey\" IN (SELECT case_mkey FROM case_phases WHERE main = 400)
ORDER BY c.\"eventDate\" DESC, c.\"ntsbNumber\" DESC"Prints the whole list as CSV. It reads the release’s Parquet files over HTTPS, so there’s nothing to download first. Install DuckDB to run it.
WITH phase_names(main, name) AS (VALUES (100, 'Prior to flight'), (150, 'Standing'), (200, 'Pushback/towing'), (250, 'Taxi'), (300, 'Takeoff'), (350, 'Initial climb'), (400, 'Enroute'), (450, 'Maneuvering'), (500, 'Approach'), (550, 'Landing'), (600, 'Emergency descent'), (650, 'Uncontrolled descent'), (700, 'Post-impact'), (750, 'After landing'), (800, 'Other'), (990, 'Unknown')),
crosswalk(code, main, name) AS (VALUES (500, 150, 'Standing'), (501, 150, 'Standing - pre-flight'), (502, 150, 'Standing - starting engine(s)'), (503, 150, 'Standing - engine(s) operating'), (504, 150, 'Standing - engine(s) not operating'), (505, 150, 'Standing - idling rotors'), (510, 250, 'Taxi'), (511, 200, 'Taxi - pushback/tow'), (512, 250, 'Taxi - to takeoff'), (513, 250, 'Taxi - from landing'), (514, 250, 'Taxi - aerial'), (520, 300, 'Takeoff'), (521, 300, 'Takeoff - roll/run'), (522, 350, 'Takeoff - initial climb'), (523, 300, 'Takeoff - aborted'), (530, 400, 'Climb'), (531, 400, 'Climb - to cruise'), (540, 400, 'Cruise'), (541, 400, 'Cruise - normal'), (542, 400, 'Maneuvering - holding (IFR)'), (550, 400, 'Descent'), (551, 400, 'Descent - normal'), (552, 600, 'Descent - emergency'), (553, 650, 'Descent - uncontrolled'), (560, 500, 'Approach'), (561, 500, 'Approach - VFR pattern - downwind'), (562, 500, 'Approach - VFR pattern - base turn'), (563, 500, 'Approach - VFR pattern - base leg/base to final'), (564, 500, 'Approach - VFR pattern - final approach'), (565, 500, 'Go-around (VFR)'), (566, 500, 'Approach - IAF to FAF/outer marker (IFR)'), (567, 500, 'Approach - FAF/outer marker to threshold (IFR)'), (568, 500, 'Circling (IFR)'), (569, 500, 'Missed approach (IFR)'), (570, 550, 'Landing'), (571, 550, 'Landing - flare/touchdown'), (572, 550, 'Landing - roll'), (573, 550, 'Landing - aborted'), (574, 550, 'Emergency landing'), (575, 550, 'Emergency landing after takeoff'), (576, 600, 'Emergency descent/landing'), (580, 450, 'Maneuvering'), (581, 450, 'Maneuvering - aerial application'), (582, 450, 'Maneuvering - turn to reverse direction'), (583, 450, 'Maneuvering - turn to landing area (emergency)'), (590, 450, 'Hover'), (591, 450, 'Hover - in ground effect'), (592, 450, 'Hover - out of ground effect'), (600, 800, 'Other'), (610, 990, 'Unknown')),
current_codes AS (
SELECT e.case_mkey, TRY_CAST(e."tier1Number" AS INTEGER) AS code,
row_number() OVER (PARTITION BY e.case_mkey ORDER BY coalesce(e."isDefiningEvent", false) DESC, e.position) AS n
FROM 'https://openairdocs.org/data/latest/ntsb_events.parquet' e
WHERE e.aircrafts_position = 1 AND e."tier1Number" GLOB '[1-9][0-9]*'
AND (e."isDefiningEvent" OR e.case_mkey IN (SELECT "mKey" FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' WHERE "isPre1982"))
),
phases AS (
SELECT case_mkey, 'current' AS scheme, code, CASE WHEN code >= 990 THEN 990 ELSE code // 50 * 50 END AS main
FROM current_codes WHERE n = 1
UNION ALL
SELECT o.case_mkey, 'older', o."phaseOfFlightCode", w.main
FROM 'https://openairdocs.org/data/latest/ntsb_occurrences.parquet' o JOIN crosswalk w ON w.code = o."phaseOfFlightCode"
WHERE o.aircrafts_position = 1 AND o."occurrenceNumber" = 1 AND o.case_mkey NOT IN (SELECT case_mkey FROM current_codes)
),
case_phases AS (
SELECT p.*, c."eventDate", c."highestInjuryLevel" = 'Fatal' AS fatal, a.aircraft_model_code
FROM phases p JOIN 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c ON c."mKey" = p.case_mkey
LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = p.case_mkey AND a.position = 1
WHERE c."eventDate" >= DATE '1962-01-01' AND p.main IN (SELECT main FROM phase_names)
)
SELECT c."ntsbNumber", c."eventDate", c."eventType", c."eventCity", c."eventStateOrRegion", a.n_number, a."aircraftMake", a."aircraftModel", c."highestInjuryLevel", c."totalFatal", c."completionStatus", c.report_url
FROM 'https://openairdocs.org/data/latest/ntsb_case_detail.parquet' c LEFT JOIN 'https://openairdocs.org/data/latest/ntsb_aircrafts.parquet' a ON a.case_mkey = c."mKey" AND a.position = 1
WHERE c."eventStateOrRegion" = 'DC' AND c."eventCountry" = 'USA'
AND c."mKey" IN (SELECT case_mkey FROM case_phases WHERE main = 400)
ORDER BY c."eventDate" DESC, c."ntsbNumber" DESCRun it at the DuckDB prompt, or in any tool that reads Parquet over HTTPS. More ways to query the release are on Use the data.
NTSB ENG17IA027Incident · No injuriesIncident investigationFinal reportBoeing 737 7H4 · Washington, DCThe failure the control alternator gearshaft, which disconnected the accessory gearbox from the rest of the engine and resulted in an uncommanded in-flight shutdown of the left engine and subsequent flight diversion. The control alternator gearshaft failed…NTSB IAD97LA071Accident · Minor injuriesLimited investigationFinal reportPiper PA-23 · Washington, DCtotal loss of power on both engines due to fuel exhaustion as a result of the pilot's improper fuel consumption calculations.NTSB BFO90LA043Accident · Serious injuriesLimited investigationFinal reportBoeing B-737 · Washington, DCThe aircraft encountered turbulence, resulting in injury to a flight attendant.NTSB BFO89IA036Incident · No injuriesIncident investigationFinal reportNorthrop T-38A · Washington, DCFailure of the T-38 pilot (in the other aircraft) to follow the ATC clearance and to maintain the proper altitude. Factors related to the incident were: failure of air traffic control (ATC) personnel to recognize the T-38'S improper altitude in a timely…NTSB BFO88IA065Incident · No injuriesIncident investigationFinal reportCessna T210R · Washington, DCImproper maintenance resulting in the routing of wire which caused an electrical short and inflight smoke.NTSB CHI87IA026Incident · No injuriesIncident investigationFinal reportBoeing 757-251 · Washington, DCDrg an en route climb, aileron control (ctl) bcm progressively more stiff. At cruise alt, the autoplt disengaged & the ailerons would not move. Aileron ctl was restored after a dscnt below the freezing level. The acft was flown below the freezing lvl for the…NTSB FTW84IA389Incident · No injuriesIncident investigationFinal reportDassault/Sud FAN JET Falcon · Washington, DCAprx 1-1/2 hrs after take-off, the capt took sinus medication. Aprx 30 minutes later, he complained of a headache, took tylenol & alka seltzer & went to the cabin to lie down. The capt was incapacitated for the rest of the flt. The coplt & a plt rated pax…NTSB DCA82IA031Incident · Serious injuriesIncident investigationFinal reportBoeing 727 · Washington, DCThe announcement of the possibility of turbulence during the descent and approach was made. During the lulls in the turbulence the cabin attendants were attending their duties and were hurt when intermittent jolts of rough air were encountered while two of…NTSB ATL82IA038Incident · No injuriesIncident investigationFinal reportde Havilland DHC-6-300 · Washington, DCAircraft was being ferried to Washington, DC following rework in toronto, Canada. During letdown in IFR conditions and moderate icing, pilot noticed a glow on the right wing. As he leaned over to check it, the right engine fire warning light and fire bell…NTSB ATL81FIA06Accident · No injuriesClosedHughes 269C · Washington, DCNTSB ATL80FA073Accident · Serious injuriesClosedHughes 269B · Washington, DCNTSB DCA80IA014Incident · Minor injuriesClosedDouglas DC-9 · Washington, DCNTSB IAD79IA066Incident · No injuriesClosedBeech 65-80 · Washington, DCNTSB IAD78IA085Incident · No injuriesClosedDouglas DC-9 · Washington, DCNTSB IAD78IA040Incident · No injuriesClosedDouglas DC-9 · Washington, DCNTSB DCA77IA021Incident · No injuriesClosedBoeing 737 · Washington, DCNTSB IAD75II005Incident · No injuriesClosedPiper PA-34 · Washington, DCNTSB IAD74D1A01Accident · Minor injuriesClosedBell 47G4A · Washington, DCNTSB NYC74IN087Incident · No injuriesClosedBoeing 727 · Washington, DCNTSB IAD74AI047Accident · No injuriesClosedBoeing 727 · Washington, DCNTSB IAD73FIA13Accident · Serious injuriesClosedBell 47G-4A · Washington, DCNTSB NYC73IN001Incident · No injuriesClosedDouglas DC-9 · Washington, DCNTSB NYC72FIA17Accident · Minor injuriesClosedBell 47G-4A · Washington, DCNTSB IAD71II056Incident · No injuriesClosedNihon YS-11A · Washington, DCNTSB IAD71FIA18Accident · Serious injuriesClosedHughes 269A · Washington, DCNTSB IAD71II039Incident · No injuriesClosedBoeing 727 · Dulles Int Apt, DCNTSB IAD71II034Incident · No injuriesClosedBoeing 747 · Dulles Int Apt, DCNTSB IAD71II042Incident · No injuriesClosedBoeing 747 · Washington, DCNTSB IAD70I0006Incident · No injuriesClosedBoeing 727 · Washington, DCNTSB DIA69I0063Incident · No injuriesClosedBoeing 727 · Washington, DCNTSB DIA68F0101Accident · No injuriesClosedGlobe GC-1B · Anacostia, DCNTSB UNK65X0905Incident · No injuriesClosedGrumman G159 · Washington, DC