首先要澄清的是:我说的是联合几何图形,而不是SQL关键字UNION。
我正在尝试将一些空间数据从Postgres with PostGIS迁移到SQL Server2008。它很好,直到我看到这样一条语句:
SELECT GeomUnion(the_geom) FROM some_table这将合并该列中的所有几何图形,并将其作为一个结果返回(类似于COUNT的工作方式)。据我所知,SQL Server只有STUnion函数,它将一个几何图形与另一个几何图形合并在一起。有没有办法做一些类似Postgres的事情?
如果有帮助,STUnion函数的工作方式如下:
SELECT first_geometry_column.STUnion(second_geometry_column) FROM some_table发布于 2010-08-13 00:46:42
我最终做到这一点的方法是使用变量:
DECLARE @Shape GEOMETRY
SET @Shape = GEOMETRY::STGeomFromText('GEOMETRYCOLLECTION EMPTY', @MySrid)
SELECT @Shape = @Shape.STUnion(Shape)
FROM MyShapeTable它不是很好,但它很有效。
发布于 2014-02-19 02:42:34
UnionAggregate函数是否仅为SQL2012?
SELECT geography::UnionAggregate( geometry ) FROM some_table嗯,我想是的。http://technet.microsoft.com/en-us/library/ff929095.aspx
发布于 2011-03-05 14:51:27
您最好的选择是创建一个CLR函数来支持聚合。现有的解决方案有几种:
https://stackoverflow.com/questions/3293190
复制相似问题