如何为 SQL Server 2012 及更新版本使用 Convex Hull
How to use Convex Hull for SQL Server 2012 and newer
我正在努力在互联网上寻找直接的答案。希望有人能帮我解决这个问题。
我有一个包含经度和纬度的客户位置数据集。每个客户都是销售区域的一部分。下面是我拥有的数据 headers 的示例。
表 1:
SalesTerritory ----- Customer ----- Longitude ----- Latitude
我正在尝试创建一个 sql 查询,该查询将在销售区域的详细级别围绕这些区域执行凸包。我的最终目标是使用地图上的输出来显示销售区域。
感谢您的帮助!
将 lat/lng 转换为地理(或几何)值,然后使用 ConvexHullAggregate
在 SalesTerritory
级别聚合。
;with geog_cte as
(
SELECT SalesTerritory, geography::Point([Longitude], [Latitude], 4326) as customer_geog
from Table1
)
SELECT SalesTerritory , geography::ConvexHullAggregate(customer_geog) as territory_convex_hull
FROM geog_cte
group by SalesTerritory ;
我正在努力在互联网上寻找直接的答案。希望有人能帮我解决这个问题。
我有一个包含经度和纬度的客户位置数据集。每个客户都是销售区域的一部分。下面是我拥有的数据 headers 的示例。
表 1:
SalesTerritory ----- Customer ----- Longitude ----- Latitude
我正在尝试创建一个 sql 查询,该查询将在销售区域的详细级别围绕这些区域执行凸包。我的最终目标是使用地图上的输出来显示销售区域。
感谢您的帮助!
将 lat/lng 转换为地理(或几何)值,然后使用 ConvexHullAggregate
在 SalesTerritory
级别聚合。
;with geog_cte as
(
SELECT SalesTerritory, geography::Point([Longitude], [Latitude], 4326) as customer_geog
from Table1
)
SELECT SalesTerritory , geography::ConvexHullAggregate(customer_geog) as territory_convex_hull
FROM geog_cte
group by SalesTerritory ;