回答済みの同様の質問がここにあることは知っていますが、残念ながらそれらのどれも私のために機能しません。私は、地図上に複数の場所を表示するページを作成する方法をハッキングしています。 HTML 5マッピングとGoogleマップを使用しています。私が持っているアドレスを長い/緯度に変換しました。それらは他の属性とともにCSVファイルに保存されます。
私はポイント、文字の変化、数として保存することを試み、独自の定義を作成しようとしましたが、成功しませんでした。テーブルは既に存在し、これらの追加の列を追加するだけです。 PostGISを使用しないほうがいいです。PostGISを使用すると、複雑さを増すことができるようになります。
それであなたは何を提案しますか?
PostGISを使用しない最も簡単なソリューションは、lat/longを2つの数値列として格納することです。numeric
正確な精度。double precision
または real
精度が必要ない場合。
データ型 point
も機能しない理由はありません。 ドキュメントごと :
ポイントは、ジオメトリックタイプの基本的な2次元のビルディングブロックです。タイプ
point
の値は、次の構文のいずれかを使用して指定されます。( x , y ) x , y
ここで、
x
およびy
は、浮動小数点数としてのそれぞれの座標です。
関連:
PostGISを使用しないほうがいいです。PostGISを使用すると、複雑さを増すことができるようになります。
それはかなりばかげています。まず、SRS IDのない緯度と経度は、それらのポイントがどこにあるかについては何も言いません。投影されているか、投影されていませんか? POINT( 0 0 )
はどこにありますか?東または西から否定的に対処していますか?
PostGISを使用するだけです。複雑ではありません。それはあなたの問題の多くをするのであなたはする必要はありません。
CREATE TABLE foo ( geog geography(POINT, 4326) );
INSERT INTO foo (geog) ( ST_MakePoint(0,0) );
point
単純な場合でも
ST_AsGeoJSON
、または多数のエクスポート形式にエクスポートできますGEOMETRYCOLLECTION
に集約できますST_ConvexHull
)ST_Distance
を使用してポイント間の距離を計算できます<=>
を使用したインデックス(最も近い点を見つける)のKNNクエリの対象ですST_DWithin