【问题标题】:Retrieve Points inside a Map Polygon Telerik检索地图多边形内的点 Telerik
【发布时间】:2017-09-26 14:40:14
【问题描述】:

我正在尝试使用空间查询获取多边形内的点,问题是这些点和多边形在同一个 SQL 表中,我附上了一张带有 Select Query 结果的图片,其中可以看到最后3条记录是包含点的多边形。

我已经用一个点尝试过,但它不起作用,因为我需要一个包含多边形名称的列表以及空间查询中的点。

    DECLARE @POI geography;  
    DECLARE @POLYGON geography;  
    SET @POI = (SELECT TOP 1 GEO FROM POI WHERE LAYERID <> 1026);
    SET @POLYGON = (SELECT TOP 1 GEO FROM POI WHERE LAYERID = 1026);
    SELECT @POLYGON.STContains(@POI);

【问题讨论】:

    标签: sql-server telerik polygon spatial spatial-query


    【解决方案1】:

    应该这样做:

    select [point].ID, [poly].ID
    from GEO as [point]
    join GEO as [poly]
       on [point].LAYERID <> 1026
       and [poly].LAYERID = 1026
       and [poly].GEO.STContains([poly].GEO]) = 1;
    

    当然,一旦你完成了匹配,你可以select任何你想要的东西(我选择了各自的ID)。

    【讨论】:

      猜你喜欢
      • 2020-09-08
      • 2015-02-19
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      • 2020-04-07
      • 1970-01-01
      • 1970-01-01
      • 2011-03-03
      相关资源
      最近更新 更多