STUnion (geography 資料類型)
適用於:SQL Server
Azure SQL 資料庫 Azure SQL 受控執行個體
傳回物件,表示 geography 執行個體與另一個 geography 執行個體的聯集。
Syntax
.STUnion ( other_geography )
注意
若要檢視 SQL Server 2014 (12.x) 和更早版本的 Transact-SQL 語法,請參閱舊版文件。
引數
other_geography
這是另一個要與 STUnion() 叫用所在的執行個體形成聯集的 geography 執行個體。
傳回型別
SQL Server 傳回類型:geography
CLR 傳回類型:SqlGeography
例外狀況
如果執行個體包含對蹠邊緣,這個方法會擲回 ArgumentException。
備註
如果 geography 執行個體的空間參考識別碼 (SRID) 不相符,這個方法一定會傳回 null。
SQL Server 支援大於半球體的空間執行個體。 在 SQL Server 中,伺服器上能夠傳回的結果集已擴充到 FullGlobe 執行個體。
只有當輸入執行個體包含圓弧線段時,結果才能包含圓弧線段。
這個方法並不精確。
範例
A. 計算兩個多邊形的聯集
下列範例使用 STUnion()
來計算兩個 Polygon
執行個體的聯集。
DECLARE @g geography;
DECLARE @h geography;
SET @g = geography::STGeomFromText('POLYGON((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))', 4326);
SET @h = geography::STGeomFromText('POLYGON((-122.351 47.656, -122.341 47.656, -122.341 47.661, -122.351 47.661, -122.351 47.656))', 4326);
SELECT @g.STUnion(@h).ToString();
B. 產生 FullGlobe 結果
下列範例會在 FullGlobe
結合了兩個 STUnion()
執行個體時產生 Polygon
。
DECLARE @g geography = 'POLYGON ((-122.358 47.653, -122.358 47.658,-122.348 47.658, -122.348 47.649, -122.358 47.653))';
DECLARE @h geography = 'POLYGON ((-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653))';
SELECT @g.STUnion(@h).ToString();
C. 從 CurvePolygon 和三角洞的聯集產生三角洞。
下列範例會從 CurvePolygon
與 Polygon
執行個體的聯集產生三角洞。
DECLARE @g geography = 'POLYGON ((-0.5 0, 0 1, 0.5 0.5, -0.5 0))';
DECLARE @h geography = 'CURVEPOLYGON(COMPOUNDCURVE(CIRCULARSTRING(0 0, 0.7 0.7, 0 1), (0 1, 0 0)))';
SELECT @g.STUnion(@h).ToString();
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應