機能するクエリがありますが、使用できるより高速で鈍感でないフォームがあるかどうか疑問に思っています。検索を絞り込むためにジオメトリの周囲にバウンディング ボックスを作成しましたが、ST_Transforms を複数回呼び出すのは面倒です。ところで: 2 つの線 (gg と gm) は同じポイントを持っています。
前もって感謝します、-
マット
CREATE TABLE lines
(
line_id bigserial NOT NULL,
line_gm_bbox geometry,
line_gm_line geometry,
line_gg_line geography(LineString,4326),
)
WITH ( OIDS=FALSE );
CREATE INDEX line_bbox_idx
ON lines
USING gist
(line_gm_bbox );
SELECT l.* FROM lines AS l WHERE l.line_gm_bbox && ST_Transform( ST_Buffer( ST_Transform( ST_GeomFromText('POINT(-71.44513306666667 42.7368536)',4326),3395 ), 2000 ), 4326 )
AND ST_DWithin( l.line_gg_line, ST_GeomFromText('POINT(-71.44513306666667 42.7368536)',4326), 200);