NTSB investigations, 1986
11 cases where the phase of flight was Emergency descent.
Cases per year
| 1963 | 2 |
|---|---|
| 1964 | 5 |
| 1965 | 4 |
| 1966 | 10 |
| 1967 | 3 |
| 1968 | 6 |
| 1969 | 3 |
| 1970 | 6 |
| 1971 | 3 |
| 1972 | 2 |
| 1973 | 7 |
| 1974 | 4 |
| 1975 | 6 |
| 1976 | 3 |
| 1977 | 4 |
| 1978 | 10 |
| 1979 | 5 |
| 1980 | 4 |
| 1981 | 3 |
| 1982 | 1 |
| 1983 | 2 |
| 1984 | 8 |
| 1985 | 10 |
| 1986 | 11 |
| 1987 | 9 |
| 1988 | 4 |
| 1989 | 3 |
| 1990 | 4 |
| 1991 | 8 |
| 1992 | 4 |
| 1993 | 5 |
| 1994 | 5 |
| 1995 | 3 |
| 1996 | 3 |
| 1997 | 3 |
| 1998 | 8 |
| 1999 | 6 |
| 2000 | 5 |
| 2001 | 5 |
| 2002 | 11 |
| 2003 | 6 |
| 2004 | 5 |
| 2005 | 10 |
| 2006 | 7 |
| 2007 | 2 |
| 2008 | 14 |
| 2009 | 31 |
| 2010 | 16 |
| 2011 | 18 |
| 2012 | 18 |
| 2013 | 16 |
| 2014 | 17 |
| 2015 | 16 |
| 2016 | 15 |
| 2017 | 14 |
| 2018 | 11 |
| 2019 | 5 |
| 2020 | 10 |
| 2021 | 12 |
| 2022 | 9 |
| 2023 | 14 |
| 2024 | 15 |
| 2025 | 13 |
| 2026 | 5 |
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 year(c.\"eventDate\") = 1986
AND c.\"mKey\" IN (SELECT case_mkey FROM case_phases WHERE main = 600)
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 year(c."eventDate") = 1986
AND c."mKey" IN (SELECT case_mkey FROM case_phases WHERE main = 600)
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 ATL86FA266Accident · 1 fatalField investigationFinal reportPiper TG8-J3C-65 · Apex, NCThe plt was practicing takeoffs and landings in his newly acquired J3 at a private airstrip when the eng sputtered and then quit. The plt lost control of the acft and hit a 't' hanger prior to hitting the ground. The acft caught fire and was destroyed,…NTSB FTW86LQG17Accident · No injuriesFinal reportMcculloch J-2 · Stanton, TXPilot attempted take off from pasture. Just after lift off the nose gear caught on a single strand electric fence and brought aircraft to a stop where it rolled over. The plts flt time was not reported or available.NTSB ATL86LA189Accident · No injuriesLimited investigationFinal reportCessna 172 · Kirkland, OHPilot had flown from wisconson to cape cod on Wednesday and was returning to Wisconsin on Sunday. He had departed provincetown on Sunday morning and stopped at hyannis due to weather. He then flew on to saratoga springs, NY with a stop at westover, arriving…NTSB MKC86FCD02Accident · Serious injuriesFinal reportPiper PA18 · Sloan, IAThe acft stalled during a low alt steep turn immediately after takeoff. The acft collided with the ground aprx 300 ft east of the rwy. No malfunctions in equipment were found. The plt stated that he was turning steeply to avoid another acft. Statements of two…NTSB ANC86FA085Accident · No injuriesField investigationFinal reportPiper L-4H · Anchorage, AKThe pilot/mechanic stated the engine oil pressure gauge began flickering, so he elected to land and during the descent the engine failed. He landed downwind in 20 knot winds and during the landing roll, across tundra/mud the airplane's wheels struck a large…NTSB LAX86LA208Accident · No injuriesLimited investigationFinal reportSchweizer SGS 1-26E · Banning, CAThe glider plt lost lift as he flew farther into the mountains with lack of thermal and ridge effect. A landing was attempted which resulted in an overrun into a ravine.NTSB LAX86LA203Accident · No injuriesLimited investigationFinal reportBell 47G-2 · Palmdale, CAThe helicopter landed hard in the desert while on a VFR personal flt. The plt indicated that he just departed a mountian area for refueling. He also indicated he was disoriented and the compass was inoperable. He decided to land and check the fuel quantity.…NTSB LAX86LA197Accident · No injuriesLimited investigationFinal reportSchempp-Hirth Standard Cirrus · Benson, AZA Schempp-Hirth standard Cirrus glider collided with rocks on landing roll in an open field. The pilot stated he was competing in an air meet. While enroute he lost altitude and was unable to regain it. He selected an open field to land in, but did not see…NTSB LAX86LA156Accident · No injuriesLimited investigationFinal reportCessna 210P · Ontario, CAA Cessna 210P collided with the runway surface after a total loss of engine power. Examination of the aircraft revealed that the right fuel tank was empty. The pilot indicated that he had a total of 60 gallons of 100LL on departure and he had selected the…NTSB FTW86LA043Accident · No injuriesLimited investigationFinal reportBell 47G · Beaumont, TXThe pilot was taking off from an area which was protected from the wind by a large building. After obtaining translational lift and climbing above the building, a right quartering tail wind, with gusts to 20 knots, was encountered. The pilot stated he lost…NTSB ATL86LA083Accident · Serious injuriesLimited investigationFinal reportPiper PA-28-181 · Hickory, NCDuring cruise flt, plt felt eng vib and diverted to nearest aprt. During the descent the plt heard an explosion, saw the eng cowl pop up and oil covered the windscreen. Established in a glide the acft collided with trees then the ground. Exam of the eng…