特定の製品タイプを提供する最寄りの N 社のサプライヤを見つける必要があるケース要件があります。階層を表す 0..1048575 の int 範囲の型。サプライヤーは複数の製品タイプを提供できるため、複数のポイントを持つことができます。
long と lat を PostGIS に格納し、型をインデックス付きの int 配列列に格納し、N の制限で両方に対してクエリを実行できます。ただし、PostgreSQL が両方を使用するかどうかわからないため、これが効率的であるとは思いませんインデックス。
私が持っている別のアイデアは、型を 3 番目の「垂直」次元に格納することです。これにより、各サプライヤーの縦横の形状に積み重ねられた「垂直」形状セグメントが作成されます。クエリを実行するには、3 番目の次元で目的の型と単純に交差する、最も近い long と lat の交差を取得します。
これは、たとえば 3DM を使用する PostGIS で可能ですか? つまり、経度と緯度のみを使用して最近傍を計算し、交差には 3 つの次元すべてを使用することはできますか?