2017-05-16 4 views
0

この問合せをpostgresqlで実行して動作させるにはどうすればよいですか?ST_Distance内のサブクエリーの使用

SELECT ST_Distance(
SELECT coordinates FROM points WHERE id = 1, 
ST_Transform(ST_GeomFromText('POINT(10.809442 54.096305)', 4326),26986)); 

私はそれが動作する座標のための第2の選択を置き換えることによって、それを実行するが、私は、私は(私はinなどで主に使用サブクエリを持っている)の内部が選択作業を行うことができますどのように表示されていない場合。 @ fradal83の答えに

おかげで、私は構文エラーを持っていないが、今、私はこれを取得:

ERROR. Operation on two GEOMETRIES with different SRIDs 

私はそれがhere言って何をしようとしたが、それは何もしなかった、まだI同じエラーが発生する(更新が成功した)。異なるSRIDs`を持つ2つのジオメトリに対して操作:

答えて

2

これは私が `ERRORを得る

SELECT ST_Distance((SELECT coordinates FROM points WHERE id = 1), 
        ST_Transform(ST_GeomFromText('POINT(10.809442 54.096305)', 4326), 26986) 
       ); 
+0

を動作するはずです。テーブルを作成したときに、SELECT AddGeometryColumn( 'points'、 'coordinates'、 '4326'、 'POINT'、2); 'を使用しました。なぜそれは動作しませんか? "4326"はSRIDではありませんか? – Newwt

+0

points.coordinatesのsridは、2番目のパラメータ(26986)と同じでなければなりません。逆の場合もあります。 – fradal83

+0

Ooooohhhhhh ...!4326)、26986 ')'; '26986)、4326' – Newwt

関連する問題