Having ist auch der falsche Ansatz, das geht nur beim Groupby.

In der Where-Klausel ist der Ausdruck zu wiederholen und kann dann abgefragt werden:

where ... and abs(Ausdruck) <= 10 ...

Da das aber Tipparbeit ist (und Fehler sich einschleichen können), kannst du auch

select * from (
originalselect ) hugo
where abs(distance) <= 10

Die Umrechnung in KM findest du ja in dem anderen Link.