PostGIS的自联接查询问题

时间:2013-02-18 15:18:00

标签: sql geospatial postgis

我有一张表,我正在使用PostgreSQL的地理空间函数进行自我连接。现在我期望建立每个交叉点的交叉点,除了那些具有相同值属性'tunnel_road'的交叉点。

因此我有两行包含值'tunnel',我不想在它们之间建立一个交叉点。

我正在使用的查询如下,但它无法正常工作,因为它仍在创建两条线之间的交叉点。

insert into temp_intersect
select nextval('road_intersection_id_seq'), a.road_id, b.road_id, st_intersection(a.road, b.road), st_centroid(st_intersection(a.road, b.road))
from polygon_road a, polygon_road b
where st_intersects(a.road, b.road) AND a.road_id < b.road_id AND a.tunnel_road != b.tunnel_road

有什么建议吗?

以下是我从中获取数据的表格。可以注意到有两行包含tunnel_road列的相同值,其中id = 47和73

enter image description here

0 个答案:

没有答案