NTSB investigations
1,978 cases where the phase of flight was Unknown.
Cases, newest first
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.\"mKey\" IN (SELECT case_mkey FROM case_phases WHERE main = 990)
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."mKey" IN (SELECT case_mkey FROM case_phases WHERE main = 990)
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 GAA21WA100Accident · 4 fatalClass 5 · ForeignBell 206 · Rio Bravo, GuatemalaNTSB CEN21LA204Accident · 1 fatalClass 3 · LimitedFinal reportPiper J3C-65 · Slaughter, LAA total loss of engine power for reasons that could not be determined from the available evidence.NTSB GAA21WA088Accident · 1 fatalClass 5 · ForeignAgusta A119 · Nuevo Laredo, MexicoNTSB GAA21WA086Accident · 1 fatalClass 5 · ForeignSikorsky S76C+ · Oak Cheon Goon, South KoreaNTSB GAA21WA081Accident · 2 fatalClass 5 · ForeignCessna 172 · Canberra, AustraliaNTSB WPR21LA164Accident · No injuriesClass 3 · LimitedFinal reportCessna 208B · Fairbanks, AKA partial loss of engine power for reasons that could not be determined based on available evidence.NTSB GAA21WA064Accident · Minor injuriesClass 5 · ForeignPiper PA46 · Iztapa, GuatemalaNTSB GAA21WA066Accident · No injuriesClass 5 · ForeignCessna 150 · Cajeme, Sonora, MexicoNTSB GAA21WA061Accident · 2 fatalClass 5 · ForeignCessna T206H · Quintana Roo, Mexico, MexicoNTSB GAA21WA060Accident · 7 fatalClass 5 · ForeignCessna 401 · Hermosillo, Mexico, MexicoNTSB GAA21WA055Accident · No injuriesClass 5 · ForeignCessna 172 · Toledo, SpainNTSB GAA21WA053Accident · 1 fatalClass 4 · ForeignRobinson R44 · Leksand, SwedenNTSB GAA21WA052AccidentClass 5 · ForeignCessna 188 · La Cruz, MexicoNTSB GAA21WA087Accident · Minor injuriesClass 5 · ForeignBell 212 · Bowen Island, CanadaNTSB GAA21WA040Accident · 2 fatalClass 4 · ForeignPiper PA-28-161 · Acklin, BahamasNTSB GAA21WA037Accident · 5 fatalClass 5 · ForeignBeech B300 · Ji'an City Jiangxi Province, ChinaNTSB GAA21WA063AccidentClass 5 · ForeignPiper PA25 · Panuco, Veracruz, MexicoNTSB GAA21WA033Accident · 2 fatalClass 5 · ForeignAviat A1C-180 · Nanyuki, KenyaNTSB GAA21WA018Accident · 2 fatalClass 4 · ForeignBell 206B · Courchevel, FranceNTSB ENG21WA017IncidentClass 5 · ForeignBoeing 737 · Kinshasa, Congo - KinshasaNTSB GAA21WA015Accident · 1 fatalClass 5 · ForeignAir Tractor AT402 · Hoopstad, South AfricaNTSB ANC21WA011Accident · 4 fatalClass 5 · ForeignRobinson R44 · Eaglesham, CanadaNTSB WPR21WA081Accident · Minor injuriesClass 5 · ForeignRobinson R66 · Pulau Indah, Port Klang, MalaysiaNTSB ANC21WA009Accident · 1 fatalClass 5 · ForeignRobinson R66 · Ojiro in Shimada-City, Shizuoka, JapanNTSB CEN21LA088Accident · 2 fatalClass 3 · LimitedFinal reportRans S12XL · Port Isabel, TXAn exceedance of the airplane’s critical angle of attack and aerodynamic stall following a loss of engine power during an unknown phase of flight, which resulted in an impact with terrain.NTSB WPR21WA065Accident · 2 fatalClass 5 · ForeignRobinson R44 · Tallong, AustraliaNTSB WPR21WA062Accident · 1 fatalClass 5 · ForeignCessna 172 · Katale, UgandaNTSB CEN21WA063Accident · 1 fatalClass 5 · ForeignRotorsport UK Cavalon · Avoch, United KingdomNTSB CEN21WA042Accident · 2 fatalClass 5 · ForeignPiper PA34 · Reus, SpainNTSB ANC21LA004Accident · 2 fatalClass 3 · LimitedFinal reportAutoGyro MTO Sport · Whitewater, KSA loss of control for reasons that could not be determined based on the available evidence.NTSB CEN21LA035Accident · No injuriesClass 3 · LimitedFinal reportPiper PA28 · Crystal Beach, TXThe partial loss of engine power for reasons that could not be determined.NTSB CEN21FA024Accident · 1 fatalClass 3 · FieldFinal reportGlasair III · Ford Heights, ILThe loss of engine power for reasons that could not be determined based on the available evidence.NTSB CEN21WA013Accident · 1 fatalClass 5 · ForeignCessna FRA150 · Troutbeck, United KingdomNTSB GAA21WA175Accident · 5 fatalClass 5 · ForeignPioneer 300 · Loches, FranceNTSB CEN21WA036Accident · 2 fatalClass 5 · ForeignCessna TU206G · Los Laureles, MexicoNTSB CEN20LA392Accident · 3 fatalClass 3 · LimitedFinal reportCessna 172 · Cottage Grove, MNA steep descent and impact with terrain for reasons that could not be determined based on the available information.NTSB WPR20WA294Accident · No injuriesForeign investigationBell 206 · Lago, NigeriaThe government of Nigeria has notified the NTSB of an accident involving a BELL 206 helicopter that occurred on August 28, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Nigeria's investigation under the provisions…NTSB WPR20LA279Accident · FatalClass 4 · LimitedFinal reportCessna 150 · Quillayute, WAThe airplane’s descent into trees and subsequent impact with terrain for undetermined reasons.NTSB CEN20WA319Accident · No injuriesForeign investigationRans S12 · Sergio Perez de Leon, MexicoThe government of Mexico has notified the NTSB of an accident involving a RANS S12 airplane that occurred on July 29, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Mexico's investigation under the provisions of ICAO…NTSB ENG20WA038Accident · No injuriesClass 5 · ForeignPiper PA28RT · Basel, SwitzerlandNTSB WPR20LA225Accident · No injuriesClass 3 · LimitedFinal reportVans RV 8 · Grimes, CAA partial loss of engine power for reasons that could not be determined because the airplane was not examined.NTSB CEN20LA266Accident · Serious injuriesClass 3 · LimitedFinal reportLancair ES-P · Pauls Valley, OKThe reason for this accident could not be determined based on the available information.NTSB WPR20LA190Accident · No injuriesClass 3 · LimitedFinal reportSchweizer 269C · North Las Vegas, NVA total loss of engine power for reasons that could not be determined based on the available information.NTSB ENG20WA037Incident · No injuriesForeign investigationAirbus A320 · Tijuana, MexicoThe Mexican government has notified the NTSB of an incident involving an Airbus A330-202 that occurred June 16, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the Direccion de Analisis de Accidentes e Incidentes de Aviacion (DGAC) of…NTSB CEN20WA433Accident · No injuriesClass 5 · ForeignCirrus SR22 · Foreign, United KingdomNTSB CEN20WA198Accident · 1 fatalForeign investigationCessna 150 · Blomberg, GermanyThe government of Germany has notified the NTSB of an accident involving a CESSNA 150 airplane that occurred on May 27, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Germany's investigation under the provisions of…NTSB CEN20WA209Accident · 2 fatalForeign investigationPiper PA38 · Kena, LithuaniaThe National Transportation Safety Board was notified of an accident involving a Piper PA-38-112 airplane, LY-ATM, near Kena, Lithuania. This investigation is under the jurisdiction of Ministry of Justice of the Republic of Lithuania, Transport Accident and…NTSB CEN20WA171Accident · 3 fatalForeign investigationCessna 182 · Area Municipio De Joyabaj, GuatemalaNTSB ANC20WA072Accident · 2 fatalForeign investigationSikorsky S76 · Cheonwangbong, South KoreaThe government of Korea, Republic Of has notified the NTSB of an accident involving a SIKORSKY S76 helicopter that occurred on May 01, 2020. The NTSB has appointed a U.S. Accredited Representative to assist the government of Korea, Republic Of's investigation…NTSB CEN20WA200Accident · 1 fatalForeign investigationPiper PA 25-235 · Angostura, Mexico