blob: 1f61d9052b02f2122cf5dadc00d259250b9e95f6 [file] [log] [blame]
DROP MATERIALIZED VIEW IF EXISTS osm_boundary CASCADE;
CREATE MATERIALIZED VIEW osm_boundary AS
SELECT ROW_NUMBER() OVER () as id, tags, geom
FROM (
SELECT jsonb_build_object('boundary', 'administrative', 'admin_level', tags -> 'admin_level', 'name', tags -> 'name') as tags, (st_dump(st_linemerge(st_collect(geom)))).geom as geom
FROM osm_linestring
WHERE tags ->> 'boundary' IN ('administrative')
AND tags ->> 'admin_level' IN ('1', '2', '3', '4')
GROUP BY tags -> 'admin_level', tags -> 'name'
) AS merge;
CREATE INDEX IF NOT EXISTS osm_boundary_geom_index ON osm_boundary USING SPGIST (geom);