merge features n time

Viewed 49

Here is my issue, I'm working on a project of water supply where I have to merge line features representing pipes if they have the same material of construction and if they are touching each other. The merge is done two by two what it means that some features will be duplicated in some cases like described in the figure below :

enter image description here

this shows exactly my issue. After the merge I will get three records but what I want is just one record which encompasses the whole pipes that fill the conditions put in the where clause :

Here is the query that helps me do the merge :

drop table if exists touches_material;
create table touches_material as 
select   distinct a.*,
st_Union(a.geom,b.geom) as fusion  from pipe a, pipe b
where  a.id < b.id and a.material = b.material  and  
st_touches(a.geom,b.geom) 
group by a.id,a.geom,b.geom

the following picture picture shows the expected result on a test data, it's realized via QGIS GIS software : enter image description here

but this is what I' getting with my query :
enter image description here

if you have any idea about how to achieve the aim that I invoked, I would be very thankful to get an answer from you. Best regards.

0 Answers
Related