联合SQL Server表中的所有几何,如Postgres中的GeomUnion [英] Union all geometry in a SQL Server table like GeomUnion in Postgres

查看:13
本文介绍了联合SQL Server表中的所有几何,如Postgres中的GeomUnion的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

先说明一下:我说的是联合几何图形,而不是SQL关键字UNION

我正在尝试将一些空间数据从带有PostGIS的Postgres迁移到SQL Server2008。一切都很好,直到我看到这样的声明:

SELECT GeomUnion(the_geom) FROM some_table
这将合并该列中的所有几何图形,并将其作为一个结果返回(类似于COUNT的工作方式)。据我所知,SQL Server只有STUnion函数,它将一个几何图形与另一个几何图形合并在一起。有没有办法做一些类似波斯格雷斯的事情?

如果有帮助,STUnion函数的工作方式如下:

SELECT first_geometry_column.STUnion(second_geometry_column) FROM some_table

推荐答案

我最终这样做的方式是使用变量:

DECLARE @Shape GEOMETRY
SET @Shape = GEOMETRY::STGeomFromText('GEOMETRYCOLLECTION EMPTY', @MySrid)

SELECT @Shape = @Shape.STUnion(Shape)
  FROM MyShapeTable

它不是很好,但它很好用。

这篇关于联合SQL Server表中的所有几何,如Postgres中的GeomUnion的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆