クエリがあります: (このクエリは、ST_Covers 関数の地理的実装を使用します)
SELECT ST_Covers(ST_GeoGraphyFromText('MULTIPOLYGON(((179 -89,179 89,-179 89,-179 -89,179 -89)))'),ST_GeographyFromText('POINT(20 30)'));
このクエリを実行すると、true が返されるはずですが、false が返されます。PostGIS (またはこのクエリ) のどこが悪いのかわかりません
そして、地理的な実装を幾何学的なものに変更し、クエリを次のように再配置すると:
SELECT ST_Covers(ST_ASTEXT(ST_GeoGraphyFromText('MULTIPOLYGON(((179 -89,179 89,-179 89,-179 -89,179 -89)))')),text('POINT(20 30)'));
正常に動作し、true を返します。
以下のクエリを使用してコンテンツを作成できますが、問題はデータベースが大きすぎると時間がかかりすぎることです
誰か教えてください
クエリ 1 を正しく機能させる方法 (意図したとおり、true を返す)、または
クエリ 2 を大きなテーブルで高速に動作させる方法
(*ST_GeoGraphyFromText('MULTIPOLYGON(((179 -89,179 89,-179 89,-179 -89,179 -89)*)* は、列のデータに置き換えられる地理的データのみを表しているため、削除する必要はありません。テーブル )
クエリ 1 が機能しない他の値は (5 5) (10 10) (-10 -10) などです。