【发布时间】:2017-08-02 22:29:25
【问题描述】:
嗨,我必须找到所有街道交叉口,我在下面编写了代码,但它返回了重复的行。有谁知道为什么或知道如何纠正它!感谢您的帮助。
DROP TABLE IF EXISTS toto;
CREATE TABLE toto(
gid serial primary key,
nom_voie1 varchar(50),
nom_voie2 varchar(50),
geom_inter geometry(Geometry,4326)
);
CREATE INDEX ON toto using gist (geom_inter);
INSERT INTO toto(nom_voie1, nom_voie2, geom_inter)
SELECT a.nom_voie, b.nom_voie, ST_Intersection(a.geom, b.geom)
FROM reseau_routier AS a , reseau_routier AS b
WHERE ST_Intersects(a.geom,b.geom)
AND ST_Touches(a.geom, b.geom)
AND a.gid < b.gid
AND a.nom_voie <> b.nom_voie;
【问题讨论】:
-
我有同样的问题,即使我添加了 DISTINCT !!!
标签: postgresql geolocation geometry geospatial postgis