Итак, я пытался улучшить сложность этого кода. Я искал много вопросов SO, но я думаю, что это не то, что я хотел. Я хочу получить 10 самых длинных и самых коротких стран с ожидаемой продолжительностью жизни - вот для чего предназначен UNION. И, как вы можете видеть, есть два идентичных подзапроса.
(SELECT *
FROM
(SELECT name, life_expectancy
FROM country_info
WHERE life_expectancy!="null") AS life_expectancy_table
ORDER BY life_expectancy DESC
LIMIT 10)
UNION
(SELECT *
FROM
(SELECT name, life_expectancy
FROM country_info
WHERE life_expectancy!="null") AS life_expectancy_table
ORDER BY life_expectancy
LIMIT 10)
Я подозреваю, что подзапрос выполняется 2 раза, и это то, чего я хочу избежать. Более того, даже если запрос не выполняется 2 раза, я хотел бы использовать псевдоним для улучшения читабельности.