Untuk fokus pada (a):
Di masa lalu, saya telah menghitung bagian sebelumnya, menyimpan lat, long, xaxis, yaxis dan zxais, di mana x, y &z didefinisikan sebagai:
xaxis = cos(radians(Lat)) * cos(radians(Lon))
yaxis = cos(radians(Lat)) * sin(radians(Lon))
zaxis = sin(radians(Lat))
Jarak kemudian dapat dihitung menggunakan SQL secara longgar seperti (acos( xaxis * $xaxis + yaxis * $yaxis + zaxis * $zaxis ) * 6367.0 / 1.852)
(di mana yang dimulai dengan $ dihitung sebelumnya untuk titik awal yang dimaksud dengan cara yang sama seperti di atas)
Pra-komputasi dengan cara ini mendorong trigonometri yang relatif mahal ke peristiwa satu kali, dan menyederhanakan kueri.