SQL Spatial:STIntersection radius

时间:2017-12-27 10:15:48

标签: sql spatial sqlgeometry

我的数据库包含不同的对象,如多边形和点。每个点都存储有单独的半径和索引。

enter image description here

使用以下sql查询检索点半径内的所有对象。

 declare @g geometry select @g = Geom from obj where ObjectIndex = 1
 declare @i float select @i = radius from obj where ObjectIndex = 1
 select * from obj WITH(index(idx_Spatial)) where
 Geom.STIntersects(@g.STBuffer(@i)) = 1 

我如何更改查询以获取Polygon对象(声明对象)中的所有点?我尝试了以下查询但没有成功。 Rembember:Radius与众不同!

declare @g geometry select @g = Geom from obj where ObjectIndex = 2
select * from obj WITH(index(idx_Spatial)) where 
@g.STIntersects(Geom.STBuffer(radius)) = 1 
  

查询处理器无法为具有的查询生成查询计划   空间索引提示

0 个答案:

没有答案