Операторы SQL, в дополнение к правильности, должны быть максимально просты в чтении и выразительном сжатии (поскольку они представляют собой одиночные атомарные действия, и ваш ум должен полностью их убеждать, чтобы избежать непредвиденных последствий.) Иногда выражение больше четко обозначается правым внешним соединением.
Но всегда можно преобразовать в другое, и оптимизатор будет делать то же самое с другим, как и другим.
. Некоторое время, по крайней мере, один из основных продуктов rdbms поддерживает только LEFT OUTER JOIN. (Я считаю, что это был MySQL.)
Вы можете сгенерировать все значения, используя выражение генератора, сохранить первое, а затем распечатать все.
import itertools
ss = 2.8 * 57 * 480
distances = (ss / h*3.6 for _, _, _, h in faces)
saved_distance = next(distances, None) # the None prevents an error if `faces` is empty
for distance in itertools.chain([saved_distance], distances):
print(f"Distance = {distance}")