Final NTSB investigations, ND
49 cases where the phase of flight was Taxi.
Cases per year
| 1964 | 3 |
|---|---|
| 1965 | 2 |
| 1966 | 4 |
| 1967 | 4 |
| 1968 | 2 |
| 1969 | 4 |
| 1971 | 1 |
| 1972 | 2 |
| 1973 | 2 |
| 1974 | 1 |
| 1975 | 1 |
| 1976 | 1 |
| 1978 | 2 |
| 1980 | 1 |
| 1981 | 2 |
| 1982 | 1 |
| 1985 | 1 |
| 1986 | 3 |
| 1987 | 1 |
| 1993 | 1 |
| 1996 | 2 |
| 2000 | 1 |
| 2001 | 1 |
| 2002 | 2 |
| 2003 | 1 |
| 2007 | 1 |
| 2023 | 2 |
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\" = 'ND' AND c.\"eventCountry\" = 'USA'
AND c.\"completionStatus\" = 'Completed'
AND c.\"mKey\" IN (SELECT case_mkey FROM case_phases WHERE main = 250)
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" = 'ND' AND c."eventCountry" = 'USA'
AND c."completionStatus" = 'Completed'
AND c."mKey" IN (SELECT case_mkey FROM case_phases WHERE main = 250)
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 CEN23LA126Accident · No injuriesClass 4 · LimitedFinal reportBeech C90 · Bismark, NDThe ground vehicle driver’s failure to see and maintain clearance from the airplane while conducting ground operations.NTSB CEN23LA103Accident · Minor injuriesClass 3 · LimitedFinal reportCessna 425 · Bismarck, NDA loss of braking due to inadequate servicing of brake fluid by the pilot/mechanic, which resulted in a loss of airplane control on the ground.NTSB CHI08CA002Accident · No injuriesData collectionFinal reportPiper PA28-161 · Grand Forks, NDThe lack of experience and the excessive taxi speed by the pilot. A contributing factors was the airport sign.NTSB CHI03LA122Accident · No injuriesLimited investigationFinal reportCessna 182S · Hatton, NDFailure by the flight instructor to maintain clearance to the tree. Contributing factors were the delayed remedial action by the flight instructor and the tree.NTSB CHI02LA152Accident · No injuriesLimited investigationFinal reportGrumman G-164A · Langdon, NDThe pilot did not maintain directional control while taxiing. A contributing factor was the wind gust condition present at the time of the accident.NTSB CHI02LA086Accident · No injuriesLimited investigationFinal reportPiper PA-28-161 · Grand Forks, NDThe student pilot not maintaining clearance from a parked van while taxiing to the parking area. The van was a factor.NTSB CHI01LA188Accident · No injuriesLimited investigationFinal reportAyres S2R-G1 · Mohall, NDthe pilot not maintaining clearance between the airplane and the truck when he backed the airplane off of the loading pad. Factors relating to this accident was the pilot's inadequate visual lookout and the truck.NTSB CHI01LA040Accident · No injuriesLimited investigationFinal reportCessna 150K · Minot, NDthe student pilot's inability to maintain aircraft control on the ground. Factors relating to the accident were the high winds, the slush-covered taxiway, the snowbank, inadequate preflight planning by the flight instructor, and the instructor pilot's failure…NTSB CHI97LA002Accident · No injuriesLimited investigationFinal reportCessna 185 · Finley, NDfailure of the flight instructor (CFI) to ensure that clearance from the dock was maintained, while starting to taxi. The crosswind was a related factor.NTSB CHI96LA075Accident · No injuriesLimited investigationFinal reportCessna 172N · Grand Forks, NDthe pilot's failure to maintain control of the airplane while taxiing. Factors in the accident were the icy condition of the taxiway and the high gusting wind.NTSB CHI93IA346Incident · No injuriesIncident investigationFinal reportCessna 414A · Dickinson, NDthe total failure of the airplane's heater system combustion air pressure safety switch.NTSB DEN87LA202Accident · No injuriesLimited investigationFinal reportRushton Sophwith Camel · Carrington, NDThe canadian private plt made an unscheduled fuel stop while on a cross country flight. During taxi from landing, the aircraft encountered a strong gusting crosswind. The left wing lifted and the aircraft nosed over.NTSB DEN86LA239Accident · No injuriesLimited investigationFinal reportPiper PA-23E-250 · Grand Forks, NDThe acft was en route from flin flon airport, manitoba, cd, to mason city, IA, and had stopped at Grand Forks, ND, for fuel and to clear customs. During taxi for takeoff, the acft struck a 1-inch concrete lip on the ramp and the right main landing gear…NTSB DEN86LA230Accident · No injuriesLimited investigationFinal reportCessna A188B · Langdon, NDWhile ground taxiing for takeoff the acft left main gear brake failed. During the ensuing right ground loop the left main gear collapsed and the left wing impacted the asphalt taxiway.NTSB DEN86LA106Accident · Serious injuriesLimited investigationFinal reportCessna 150J · Tioga, NDThe plt dept minot, ND, with his son aboard, for a pvt airstrip near his home of windrose, ND. He said because of high winds he landed at Tioga, ND. He said that while taxiing after landing strong gusty winds flipped his acft upside down. The acft was…NTSB DEN86LA032Accident · No injuriesLimited investigationFinal reportPiper PA-31-310 · Fargo, NDThe plt stated that during the ground taxi after landing, the right main gear collapsed. During the investigation, it was determined the down lock mechanism was not engaged. Upon examination, it was determined that the main gear lock activator rod was…NTSB DEN82DA157Accident · No injuriesFinal reportCessna 172 · Grafton, NDThe pilot stated that when he began to taxi he noticed a Cessna 172 with its engine running in front of a hangar, about 500 feet ahead and to his left. Continuing his taxi, the pilot's attention was diverted by an aircraft on the right. When he looked forward…NTSB DEN81DTG03Accident · No injuriesClosedCessna 150 · Trotter, NDNTSB DEN81FA018Accident · No injuriesClosedBoeing 747 · Fargo, NDNTSB DEN81DTG05Accident · No injuriesClosedCessna 172 · Oakes, NDNTSB MKC78FTG07Accident · No injuriesClosedFairchild FH1100 · Larimore, NDNTSB MKC78DTG04Accident · No injuriesClosedPiper PA-22 · Pembina, NDNTSB MKC76DTG19Accident · Minor injuriesClosedCessna 150M · Rolette, NDNTSB MKC75FTG17Accident · No injuriesClosedCessna 172I · Pettibone, NDNTSB MKC74FTG19Accident · No injuriesClosedCessna 188 · Crete, NDNTSB MKC74DTG11Accident · No injuriesClosedCessna 172 · Bowman, NDNTSB MKC74DTG05Accident · Minor injuriesClosedCessna 140A · Minot, NDNTSB MKC73DTG02Accident · No injuriesClosedCessna 120 · Kindred, NDNTSB MKC72DTG17Accident · No injuriesClosedCessna 172F · Cando, NDNTSB MKC71FTG31Accident · No injuriesClosedMooney M20C · Minot, NDNTSB MKC70F0308Accident · No injuriesClosedPiper PA-18 · Grand Forks, NDNTSB MKC70F0250Accident · No injuriesClosedPiper PA-18 · Kindred, NDNTSB MKC69D0466Accident · No injuriesClosedCessna 172 · Harvey, NDNTSB MKC69D0337Accident · No injuriesClosedPiper J-3 · Stanley, NDNTSB MKC69D0001Accident · No injuriesClosedCessna 182 · Underwood, NDNTSB MKC68D0600Accident · No injuriesClosedAeronca 7EC · Benedict, NDNTSB MKC68D0354Accident · Minor injuriesClosedPiper PA-22 · Bismarck, NDNTSB MKC68F0303Accident · No injuriesClosedAeronca 65-TC · Langdon, NDNTSB MKC67F0458Accident · No injuriesClosedCessna 182 · Edgeley, NDNTSB MKC67D0377Accident · No injuriesClosedAeronca 7AC · Cooperstown, NDNTSB MKC67F0313Accident · No injuriesClosedCessna 172H · Fargo, NDNTSB UNK67X0105Accident · No injuriesClosedCessna 180 · Strasburg, NDNTSB MKC67F0020Accident · No injuriesClosedPiper PA-25 · Westhope, NDNTSB MKC66F0511Accident · No injuriesClosedDowner 14-19 · Fargo, NDNTSB MKC66D0426Accident · No injuriesClosedCessna 182 · Rolette, NDNTSB MKC65D0050Accident · No injuriesClosedCessna 170B · Forman, NDNTSB UNK65X0295Accident · No injuriesClosedCessna 140 · Edgely, NDNTSB UNK64X4162Accident · No injuriesClosedCessna 182B · Fargo, NDNTSB UNK64X3595Accident · No injuriesClosedPiper J3 · Lucca, ND