NTSB investigations, IN
47 cases where the phase of flight was Uncontrolled descent.
Cases per year
| 1964 | 2 |
|---|---|
| 1965 | 1 |
| 1966 | 2 |
| 1967 | 4 |
| 1968 | 5 |
| 1969 | 1 |
| 1970 | 2 |
| 1971 | 2 |
| 1972 | 7 |
| 1973 | 2 |
| 1974 | 1 |
| 1975 | 3 |
| 1976 | 4 |
| 1977 | 2 |
| 1978 | 2 |
| 1979 | 3 |
| 1980 | 1 |
| 1981 | 1 |
| 1985 | 1 |
| 1995 | 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\" = 'IN' AND c.\"eventCountry\" = 'USA'
AND c.\"mKey\" IN (SELECT case_mkey FROM case_phases WHERE main = 650)
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" = 'IN' AND c."eventCountry" = 'USA'
AND c."mKey" IN (SELECT case_mkey FROM case_phases WHERE main = 650)
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 CHI96LA008Accident · Minor injuriesLimited investigationFinal reportPiper PA-22 · Crawfordsville, INThe pilot's premature raising of the flaps and the low airspeed.NTSB CHI85FA301Accident · 1 fatalField investigationFinal reportBell 47G2A1 · Brook, INThe helicopter contacted the terrain in a flat attitude and rolled over during an autorotative landing. A witness stated an autorotation was entered at 800 ft AGL during which the plt made a 360 deg descending turn. An application of pwr was heard at an alt…NTSB CHI82FA007Accident · 4 fatalClosedCessna 172 · Kokomo, INNTSB CHI80DA061Accident · 1 fatalClosedAeronca C-3 · Luray, INNTSB CHI80FA013Accident · 1 fatalClosedCessna 177 · Gary, INNTSB CHI79FA079Accident · 2 fatalClosedCessna 310 · Blue Ridge, INNTSB CHI79FA023Accident · 2 fatalClosedPiper PA-28R · Memphis, INNTSB CHI78FA066Accident · 1 fatalClosedBrantley B-2B · Brook, INNTSB CHI78FEX23Accident · 1 fatalClosedHunter Mong GH-1 · Roll, INNTSB CHI788A011Accident · 5 fatalClosedBeech P35 · New Salem, INNTSB CHI77FEX49Accident · Minor injuriesClosedMidget Mustng · Clinton, INNTSB CHI77FA018Accident · 3 fatalClosedPiper PA-28 · Columbia City, INNTSB CHI77FA011Accident · 1 fatalClosedCessna 195 · Roanoke, INNTSB CHI76AC064Accident · 2 fatalClosedPiper PA-28 · W.Terre Haute, INNTSB CHI76AC063Accident · 1 fatalClosedCessna 310H · Richland City, INNTSB CHI76AC040Accident · 2 fatalClosedPiper PA-30 · Monrovia, INNTSB CHI75AC092Accident · 1 fatalClosedPiper PA-22 · Port Isabel, INNTSB CHI75AC072Accident · 1 fatalClosedPiper PA-24 · Cincinnati, INNTSB NYC74AN072Accident · 1 fatalClosedCessna U206 · Monon, INNTSB CHI74AC010Accident · 1 fatalClosedPiper PA-28R · Fountaintown, INNTSB CHI73AC087Accident · 2 fatalClosedPiper PA-22 · Indianapolis, INNTSB CHI73AC060Accident · 2 fatalClosedPiper PA-28 · Paragon, INNTSB CHI73AC025Accident · 1 fatalClosedCessna 172 · Martinsville, INNTSB CHI73AC018Accident · 5 fatalClosedCessna 182M · Brownsburg, INNTSB CHI73FEE09Accident · No injuriesClosedBellanca 17-30 · Gary, INNTSB CHI73AC004Accident · 4 fatalClosedPiper PA-24 · Kewanna, INNTSB CHI72AC087Accident · 2 fatalClosedCessna 175A · Boonville, INNTSB CHI72FET18Accident · Serious injuriesClosedCessna 172 · Elkhart, INNTSB CHI71AC091Accident · 2 fatalClosedPiper PA-30 · Fort Wayne, INNTSB CHI71AC078Accident · 2 fatalClosedMooney M20C · Muncie, INNTSB CHI71AC032Accident · 2 fatalClosedPiper PA-28 · Pierceton, INNTSB CHI70FBA10Accident · Minor injuriesClosedFulton EAA · Perrysville, INNTSB CHI69A0075Accident · 1 fatalClosedMooney M20E · Jeffersonvlle, INNTSB CHI69D0275Accident · No injuriesClosedPiper PA-28 · Andersonville, INNTSB CHI69A0017Accident · 3 fatalClosedMooney A2-A · Anderson, INNTSB CHI69F0067Accident · Serious injuriesClosedCessna 172 · Fairbanks, INNTSB CHI68A0091Accident · 1 fatalClosedBeech 35 · Gary, INNTSB CHI68A0064Accident · 2 fatalClosedCessna 172 · Liberty, INNTSB CHI67A0110Accident · 4 fatalClosedCessna 182 · Gary, INNTSB CHI67A0104Accident · 3 fatalClosedCessna 210 · Bainbridge, INNTSB CHI67A0102Accident · 1 fatalClosedCessna 210A · Plymouth, INNTSB CHI67A0094Accident · 2 fatalClosedCessna 150 · Kokomo, INNTSB CHI67A0069Accident · 1 fatalClosedBeech A23 · Forest, INNTSB CHI66A0089Accident · 1 fatalClosedPiper PA-22 · Morocco, INNTSB CHI65A0080Accident · 1 fatalClosedPiper PA-22 · Madison, INNTSB UNK64X1084Accident · 4 fatalClosedPiper PA-28 · Auburn, INNTSB UNK64X0336Accident · 1 fatalClosedCessna 172 · Lochiel, IN