Да, в первом же запросе (`price` -`price` / 100 * `sale`) это алиас. Но запрос с выборкой условий как подзапросы, это слишком большая нагрузка. Выгоднее будет двумя запросами:
'SELECT MIN(`price` -`price` / 100 * `sale`) `pmin`, MAX(`price` -`price` / 100 * `sale`) `pmax` FROM `smartphone`'
а затем выборку по этим параметрам, или, если позволяет версия базы, то попробовать
'WITH tmp (SELECT MIN(`price` -`price` / 100 * `sale`) `pmin`, MAX(`price` -`price` / 100 * `sale`) `pmax` FROM `smartphone`)
SELECT * FROM `smartphone` WHERE `price` BETWEEN (SELECT pmin FROM tmp) AND (SELECT pmax FROM tmp)'