I would really appreciate any feedback. My code is below and the error code is 1054. 'subq1.IATA' in the 'on' clause is unknown.
SELECT SUM(CASE
WHEN ABS(TZ_NUM_DEP-TZ_NUM_ARR)>=2 THEN 1 ELSE 0
END AS Total)
FROM ontime AS o1
INNER JOIN (SELECT SUBSTRING_INDEX(a1.Name,' Airport',1) AS Departure,
CASE
WHEN a1.Timezone='America/New_York (Eastern)' THEN 1
WHEN a1.TimeZone='America/Chicago (Central)' THEN 2
WHEN a1.Timezone='America/Denver and America/Phoenix (Mountain)' THEN 3
WHEN a1.Timezone='America/Los_Angeles (Pacific)' THEN 4
END AS TZ_NUM_Dep,
SUBSTRING_INDEX(a2.Name,' Airport',1) AS Arrival,
CASE
WHEN a2.Timezone='America/New_York (Eastern)' THEN 1
WHEN a2.TimeZone='America/Chicago (Central)' THEN 2
WHEN a2.Timezone='America/Denver and America/Phoenix (Mountain)' THEN 3
WHEN a2.Timezone='America/Los_Angeles (Pacific)' THEN 4
ELSE NULL
END AS TZ_NUM_Arr
FROM ontime AS o2
LEFT JOIN airports AS a1
ON o2.Origin=a1.IATA
LEFT JOIN airports AS a2
ON o2.Dest=a2.IATA
WHERE a1.Country='United States' AND a2.Country='United States' AND Cancelled=0 AND Diverted=0) subq1
ON o1.Origin=subq1.IATA;