NTSB investigations, MI
36 cases where the phase of flight was Unknown.
Cases per year
| 1964 | 1 |
|---|---|
| 1966 | 2 |
| 1968 | 1 |
| 1970 | 1 |
| 1972 | 1 |
| 1973 | 2 |
| 1983 | 1 |
| 1984 | 1 |
| 1985 | 1 |
| 1987 | 1 |
| 1989 | 2 |
| 1990 | 4 |
| 1992 | 2 |
| 1993 | 2 |
| 1995 | 1 |
| 1997 | 2 |
| 1998 | 1 |
| 1999 | 1 |
| 2000 | 1 |
| 2001 | 1 |
| 2002 | 1 |
| 2007 | 1 |
| 2010 | 1 |
| 2011 | 1 |
| 2015 | 1 |
| 2022 | 1 |
| 2024 | 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\" = 'MI' AND c.\"eventCountry\" = 'USA'
AND 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."eventStateOrRegion" = 'MI' AND c."eventCountry" = 'USA'
AND 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 CEN24LA336AccidentClass 4 · LimitedFinal reportCessna 182D · Coopersville, MIThe loss of airplane control while landing.NTSB CEN22LA442Accident · No injuriesClass 3 · LimitedInvestigation openPiper PA-18 · Battle Creek, MINTSB CEN15LA185Accident · No injuriesLimited investigationFinal reportGiackino Donald W Rotorway 162F · Marquette, MIThe loss of helicopter control for reasons that could not be determined based on the available evidence.NTSB CEN11IA264Incident · No injuriesIncident investigationFinal reportBombardier CL-600-2B19 · Detroit, MIThe mechanic's incomplete securing of all the wheel well bin's fasteners, which resulted in separation of the bin from the airplane.NTSB CEN10CA325Accident · No injuriesData collectionFinal reportCessna 172 · Traverse City, MIDamage to the firewall for undetermined reasons.NTSB CHI07FA279Accident · 2 fatalField investigationFinal reportSocata TB-20 Trinidad · Pointe Aux Pins, MIUndetermined.NTSB CHI03FAMS1Accident · 2 fatalMissing aircraftFinal reportCessna 175 · MIUndetermined. Missing aircraft.NTSB CHI01LA236Accident · Serious injuriesLimited investigationFinal reportChampion 7KCAB · Brooklyn, MIThe forced landing for undetermined reasons. A factor to the accident was the corn crop.NTSB CHI00FAMS2Accident · 1 fatalMissing aircraftFinal reportPeters RAF 2000 · Manistique, MIundetermined.NTSB CHI00FAMS1Accident · 1 fatalMissing aircraftFinal reportCessna 175 · MIundetermined.NTSB CHI99LA009Accident · No injuriesLimited investigationFinal reportCessna 150F · Muskegon, MIpoor in-flight planning by an unqualified person which resulted in fuel exhaustion. A factor was the swamp in which the forced landing was made.NTSB CHI97FA308Accident · 2 fatalField investigationFinal reportPiper PA-28-235 · St. Ignaces, MIThe noninstrument-rated pilot's improper decision to depart in instrument meteorological conditions, which resulted in impact with terrain.NTSB CHI97FAMS2Accident · 2 fatalMissing aircraftFinal reportBeech 95-C55 · Grand Haven, MIundetermined.NTSB CHI95LA175Accident · 1 fatalLimited investigationFinal reportTom Kilgore KR-2 · Alanson, MIimproper planning/decision by the pilot, which resulted in fuel exhaustion due to an inadequate supply of fuel, and failure of the pilot to maintain control of the airplane, which resulted in a stall/spin and collision with the ground.NTSB CHI94FAMS1Accident · 1 fatalMissing aircraftFinal reportCessna 172I · Kalamazoo, MIUndetermined.NTSB CHI93FAMS2Accident · 1 fatalMissing aircraftFinal reportPiper PA-28R-200 · Grand Haven, MIundetermined.NTSB CHI92FAMS3Accident · 1 fatalMissing aircraftFinal reportCessna 150H · Manistee, MIUndeterminedNTSB CHI92FAMS2Accident · 4 fatalMissing aircraftFinal reportCessna 172N · Lake Michigan, MIUndetermined.NTSB CHI90DEM09Accident · 1 fatalFinal reportComben Bowers Flybaby IA · Cheboygan, MIUndetermined.NTSB CHI90DEM08Accident · 2 fatalFinal reportCessna 150L · Holland, MIUndetermined. Factors related to the accident were: darkness & impairment of the pilot due to carbon monoxide.NTSB CHI90FAMS2Accident · 2 fatalMissing aircraftFinal reportPiper PA-30B · Charlevoix, MIThe probable cause of this accident is undetermined.NTSB CHI90IA064Incident · No injuriesIncident investigationFinal reportBoeing 747-151 · Detroit, MIA fire in the aft cargo compartment for undetermined reasons(s).NTSB CHI90LA280Accident · 1 fatalLimited investigationFinal reportPiper PA-22-150 · Engadine, MIA collision with trees and the terrain for undetermined reasons.NTSB CHI90LA032Accident · Minor injuriesLimited investigationFinal reportCessna 182H · Howell, MIFailure of the mixture control cable, which resulted in a loss of power due to fuel starvation during a climb after takeoff. A factor related to the accident was: rough terrain in the emergency landing area.NTSB CHI87DEC03Accident · Serious injuriesFinal reportNavion G · Erie, MIWith the landing gear extended, the aircraft impacted with trees in a near inverted attitude and was destroyed. The pilot, who was the sole occupant was seriously injured. There were no witnesses to the accident and the pilot could not remember the events…NTSB CHI85FA156Accident · 3 fatalField investigationFinal reportCessna 172N · White Cloud, MIAt about 0250 EST, control tower psnl at the grand rapids arpt heard a 'mayday' call from N23TC, but when they tried to communicate with the acft, there was no response. The call was repeated svrl times. A check at the local arpt revealed there was an acft…NTSB CHI85FA070Accident · 2 fatalField investigationFinal reportPiper PA-31 · Pontiac, MIThe aircraft departed the airport with one dry air pump inoperative and the other pump reading low. Aircraft control was lost during an instrument approach in IMC approximately 2.5 hours later. Both pump driveshafts were found sheared in the wreckage and both…NTSB CHI84FA042Accident · 3 fatalField investigationFinal reportPiper PA-22-150 · Easton Township, MIThe acft crashed aprx 3 mi from the departure arpt. According to witnesses, it was flying at aprx 200 ft AGL when the right wing dipped & then the acft went nearly straight into the ground. An inspection of the airframe & flt control sys revealed no evidence…NTSB CHI74AC030Accident · 1 fatalClosedCessna 337 · Mackinac Cty, MINTSB CHI74AC013Accident · 4 fatalClosedPiper PA-28 · St.Ignace, MINTSB CHI73ACO34Accident · 3 fatalClosedPiper PA-23 · Hubbard Lk, MINTSB CHI70AC084Accident · 2 fatalClosedCessna 210B · Mackinac Is, MINTSB CHI69A0044Accident · 3 fatalClosedBeech 65-80 · Houghton, MINTSB CHI67A0035Accident · 1 fatalClosedCessna 172 · Detroit, MINTSB CHI66A0097Accident · 4 fatalClosedPiper PA-24 · North Point, MINTSB UNK64X0580Accident · 4 fatalClosedAero Comdr 560E · Detroit, MI