簡體   English   中英

如何在多邊形和點geometryfile之間執行STIntersect?

[英]How to perform STIntersect between a polygon and point geometryfile?

到目前為止,我有:

select Metro.Object_ID 
from Geocoding_tab.dbo.Part1_Part2_Combined_Final as paypal
    ,Object_id.dbo.All_Combined_9_Metros as Metro
where paypal.geom.STIntersect(Metro.GEOM) = 1;

您可以修改查詢以使用JOIN語法

SELECT Metro.Object_ID 
FROM
    Geocoding_tab.dbo.Part1_Part2_Combined_Final as paypal
INNER JOIN 
    Object_id.dbo.All_Combined_9_Metros as Metro ON paypal.geom.STIntersects(Metro.GEOM) = 1;

編輯 -以下評論中顯示的以下錯誤

您可以使用STIsValid方法來檢測形狀是否無效。 如果無效,該方法將返回0。

MakeValid方法將修復無效的形狀數據

例如:

UPDATE table SET geom = geom.MakeValid() where geom.STIsValid() = 0

注意

如錯誤所示,MakeValid可能會以您認為不正確的方式更改形狀,具體取決於形狀的原始問題。 因此,在繼續操作之前,您應該確認對“更正”的形狀感到滿意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM