私はpostgresqlバージョンを使用しています:「gcc(GCC)4.6.3 20120306(Red Hat 4.6.3-2)でコンパイルされたx86_64-unknown-linux-gnu上のPostgreSQL 9.3.1、64ビット」
ポイントとポリゴンをデータ型として使用して、2つのテーブルAとBを作成しました。ポイントがポリゴンの内側にあるかどうかを知りたいです。このために、私は ST_Intersect(A.point_LatLong , B.polygon_abc); を使用しようとしています。私のクエリは次のとおりです。
SELECT A.id
FROM A, B
WHERE A.name = 'callifornia'
AND ST_Intersect(A.point_LatLong , B.polygon_abc);
ここでpoint_latLong
とpolygon_abc
は、テーブル A と B のポイントとポリゴンのデータ型を持つ列名です。
しかし、このクエリはエラーを返します:
エラー: 関数 st_intersect(point, polygon) は存在しません
3 行目: WHERE city.city_name = 'callifornia' AND ST_intersect(city.c... ヒント
: 指定された名前と引数の型に一致する関数はありません。
型キャスト。
どうすればこの問題を解決できますか? st_contains() などの postgresql で他の空間メソッドを使用することさえできません。解決策があれば教えてください。