一連の場所とその X、Y 座標があるとします。
L1(X1, Y1) L2(X2, Y2) L3(X3, Y3) ... L10000(X10000, Y10000)
そして、2 つの場所の間の距離を返す関数があります: distance(L1, L2) = 5 マイル
特定の場所について、100 マイル以内にあるすべての場所を見つけるにはどうすればよいですか? または、より簡単な場合は、最も近い 50 の場所
セットアップは、場所とその郵便番号の SQL Server テーブルです。この関数は 2 つの郵便番号を受け取り、それぞれの緯度と経度を調べて距離を返します。結果は頻繁に変更されないため、結果をキャッシュできます。