私のテーブルは、SRID 3857 で SqlGeometry を使用しています。
ポイントが与えられたとき、半径 X マイルまたは X メートル以内にあるすべての形状を見つけるにはどうすればよいでしょうか?
私のテーブルは、SRID 3857 で SqlGeometry を使用しています。
ポイントが与えられたとき、半径 X マイルまたは X メートル以内にあるすべての形状を見つけるにはどうすればよいでしょうか?
ポイントの周りにバッファを配置し、STIntersectsを実行してすべての交差形状を取得します。Geometry 列にインデックスを付けることを確認してください。そうしないと、遅くなる可能性があります。x はメートル単位であることに注意してください (例: 10m)。
SELECT *
FROM MyTable
WHERE MyGeometryShapesColumn.STIntersects(@MyGeometryPoint.STBuffer(10)) = 1;