![](/img/trans.png)
[英]How to count how many points intersect each polygon using SQL SERVER
[英]How to find the points that did not intersect with STIntersect using SQL Server
我使用两个表以及点到指定多边形的交点执行STInteract。 我已经将所有表转换为具有所有几何形状。 我在为此编写查询时遇到问题。 我试图寻找没有相交的点。
这是我的两张桌子
PO_Database
=包含点 POLY_Database
=感兴趣的多边形 这是我的脚本:
SELECT GEOM
FROM [dbo].[PO_Database] as PO
JOIN [dbo].[POLY_Database] as p ON hwy.GEOM.STIntersects(p.NEATCELL) = 1
我尝试将值从1更改为0,但是当查询以0运行时,我得到了重复的几何值。如何编写查询以给我不与多边形相交的点的名称。 还有一种方法可以检查相交的位置是否正确。
如果您得到重复的值,则POLY_Database
表中可能会有多行。 如果要查找不与任何这些多边形相交的点,请尝试以下查询:
SELECT GEOM
FROM [dbo].[PO_Database] as PO
WHERE NOT EXISTS (
SELECT * FROM [dbo].[POLY_Database] as p
WHERE hwy.GEOM.STIntersects(p.NEATCELL) = 1
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.