【发布时间】:2019-12-11 16:47:44
【问题描述】:
在具有 M 和 Z 的多个有序线几何图形上使用联合聚合,但最终结果缺少这些 Z 和 M 值。我也尝试过使用地理位置,但没有运气。
测试查询
create table #test
(shape geometry)
insert into #test(shape)
values (geometry::STGeomFromText('LINESTRING (-89.831404 29.869888 2.5 28.58, -89.835404 29.869892 2.5 30.13)', 4269)), (geometry::STGeomFromText('LINESTRING (-89.835404 29.869892 2.5 30.13, -89.831403 29.869896 2.5 31.45)', 4269))
DECLARE @geom3 geometry = (select geometry::UnionAggregate(shape) FROM #test )
SELECT @geom3.AsTextZM()
drop table #test
返回
LINESTRING (-89.831403 29.869896, -89.835404 29.869892, -89.831404 29.869888)
我希望得到以下结果:
LINESTRING (-89.831403 29.869896 2.5 28.58, -89.835404 29.869892 2.5 30.13, -89.831404 29.869888 2.5 31.45)
【问题讨论】:
-
您需要提供更多信息,否则人们会否决您的问题。尝试添加相关代码以及描述您的数据格式。甚至可能还有数据示例。
-
谢谢。这是我的第一篇文章,不知道该包含什么。
-
据我所知,UnionAgregate 将生成一个新的地理值,并在此过程中从源形状中删除所有 Z 和 M(高程和测量)数据。
-
你知道有什么相同/变通但保留 Z 和 M 的方法吗? CollectionAggregate 保留了它们,但它给了我一个无序的几何集合,这不是我想要的
-
对不起,我没有。