2つのテーブルがあり、そのうちの1つにオブジェクトの位置を示すジオメトリ列と、ジオメトリ形式のポイント座標を持つもう1つのテーブル(SQL Server)があります。私は最初のテーブルから最も近いオブジェクトを見つけるために2番目のテーブルの各ポイントが必要です。さて、これはその特定の点に最も近いテーブルから私にレコードを与えるSQL - レコードごとの最適な処理方法
DECLARE @g geometry = geometry::STGeomFromText('POINT
(1 2,)',0);
SELECT TOP(1) geom.ToString()
FROM [T1].[dbo].[table_shapes]
WHERE geom.STDistance(@g) IS NOT NULL
ORDER BY geom.STDistance(@g);
が、私はからの各点について、その最も近い形状を見つけたい:私はシングルポイントのためにこれを行うことができ、クエリを得ましたポイントをハードコーディングするのではなく、ポイントを持つテーブルを作成し、結果テーブルに関連付けられたシェイプを新しいテーブルに配置したいと考えています。 私は、各レコードを繰り返し実行し、上記のクエリを実行する機能を考えていますが、これは遅くなるため、最良の方法ではないかもしれません... これはJOINでどうやって達成できますか?