テーブルA:
lat | long | the_geom | code | sign
13.8433095 | 100.6360357 | 0101000020E61.... | ABC | start_point
13.7544738 | 100.5459646 | 0101000020E6..... | ABC | end_point
13.4124215 | 100.6232332 | 0101000020E61.... | DEF | start_point
13.2423438 | 100.2324426 | 0101000020E6..... | DEF | end_point
テーブルB:
lat | long | the_geom | code
13.7546285 | 100.5458729 | 0101000020E.... | ABC
13.7546698 | 100.5458513 | 0101000020E.... | ABC
13.7547107 | 100.5458233 | 0101000020E.... | DEF
...
各ポイント(テーブルAの開始ポイントと終了ポイント)の最も近いポイントを見つけて、テーブルBで同じ「コード」を持つすべてのポイントと比較しますか?
これを解決するのに最適なPostGIS関数/ PostgreSQLクエリは何ですか?私が試したのは..
ST_Distance_SpheroidおよびST_DWithinおよびST_Distance
しかし、1つのクエリ内でそれらを組み合わせる方法はわかりません。