(a)に焦点を当てるには:
過去に、緯度、経度、x軸、y軸、zxaisを格納するパーツを事前に計算しました。ここで、x、y、zは次のように定義されます。
xaxis = cos(radians(Lat)) * cos(radians(Lon))
yaxis = cos(radians(Lat)) * sin(radians(Lon))
zaxis = sin(radians(Lat))
距離は、SQLを使用して(acos( xaxis * $xaxis + yaxis * $yaxis + zaxis * $zaxis ) * 6367.0 / 1.852)
のように大まかに計算できます。 ($で始まるものは、上記と同じ方法で問題の開始点に対して事前に計算されます)
この方法で事前計算すると、比較的高価なトリガーが1回限りのイベントにプッシュされ、クエリが簡素化されます。