PostGISは地球を球体(sphere)または回転楕円体(spheroid)とみなした上での、地表面距離を計算して距離を計算するための関数(distance_sphere、distance_spheroid)を持っています。 なので、 SELECT * FROM geo_table WHERE distance_sphere(geo_column, GeomFromText('POINT(140 89)',4326)) < 10000; みたいなSQLで、経緯度で位置情報データが登録されたテーブルから周辺10kmのデータだけを検索する事ができます。 ですがこの検索、空間インデックスが利用されない(総当り検索になる)のが悩みの種で。 もっとも、そもそも地表面距離を計算する関数でなくとも、格納している座標系上での距離を計算する関数distance(主に、経緯度座標系ではなく、メートル単位