58 lines
1.3 KiB
SQL
58 lines
1.3 KiB
SQL
CREATE EXTENSION IF NOT EXISTS postgis;
|
|
CREATE EXTENSION IF NOT EXISTS hstore;
|
|
|
|
CREATE OR REPLACE VIEW poi_supermarkten AS
|
|
SELECT
|
|
osm_id,
|
|
COALESCE(NULLIF(name, ''), NULLIF(brand, ''), 'Supermarkt') AS name,
|
|
'supermarkt'::text AS category,
|
|
shop,
|
|
amenity,
|
|
brand,
|
|
operator,
|
|
way AS geom
|
|
FROM planet_osm_point
|
|
WHERE shop = 'supermarket'
|
|
UNION ALL
|
|
SELECT
|
|
osm_id,
|
|
COALESCE(NULLIF(name, ''), NULLIF(brand, ''), 'Supermarkt') AS name,
|
|
'supermarkt'::text AS category,
|
|
shop,
|
|
amenity,
|
|
brand,
|
|
operator,
|
|
ST_PointOnSurface(way) AS geom
|
|
FROM planet_osm_polygon
|
|
WHERE shop = 'supermarket';
|
|
|
|
CREATE OR REPLACE VIEW poi_scholen AS
|
|
SELECT
|
|
osm_id,
|
|
COALESCE(NULLIF(name, ''), 'School') AS name,
|
|
'school'::text AS category,
|
|
shop,
|
|
amenity,
|
|
brand,
|
|
operator,
|
|
way AS geom
|
|
FROM planet_osm_point
|
|
WHERE amenity = 'school'
|
|
UNION ALL
|
|
SELECT
|
|
osm_id,
|
|
COALESCE(NULLIF(name, ''), 'School') AS name,
|
|
'school'::text AS category,
|
|
shop,
|
|
amenity,
|
|
brand,
|
|
operator,
|
|
ST_PointOnSurface(way) AS geom
|
|
FROM planet_osm_polygon
|
|
WHERE amenity = 'school';
|
|
|
|
CREATE INDEX IF NOT EXISTS planet_osm_point_way_gix ON planet_osm_point USING GIST (way);
|
|
CREATE INDEX IF NOT EXISTS planet_osm_polygon_way_gix ON planet_osm_polygon USING GIST (way);
|
|
ANALYZE planet_osm_point;
|
|
ANALYZE planet_osm_polygon;
|