Merge branch 'master' into gh-master
# Conflicts: # Makefile # layers/landuse/landuse.sql # layers/poi/poi.sql
This commit is contained in:
@@ -26,7 +26,7 @@ SELECT osm_id_hash AS osm_id,
|
||||
COALESCE(NULLIF(name_en, ''), name) AS name_en,
|
||||
COALESCE(NULLIF(name_de, ''), name, name_en) AS name_de,
|
||||
tags,
|
||||
poi_class(subclass, mapping_key) AS class,
|
||||
poi_class(subclass, mapping_key, subtype) AS class,
|
||||
CASE
|
||||
WHEN subclass = 'information'
|
||||
THEN NULLIF(information, '')
|
||||
@@ -34,6 +34,8 @@ SELECT osm_id_hash AS osm_id,
|
||||
THEN NULLIF(religion, '')
|
||||
WHEN subclass = 'pitch'
|
||||
THEN NULLIF(sport, '')
|
||||
WHEN subclass = 'sports_centre'
|
||||
THEN NULLIF(sport, subclass)
|
||||
ELSE subclass
|
||||
END AS subclass,
|
||||
agg_stop,
|
||||
@@ -42,9 +44,33 @@ SELECT osm_id_hash AS osm_id,
|
||||
CASE WHEN indoor = TRUE THEN 1 END AS indoor,
|
||||
row_number() OVER (
|
||||
PARTITION BY LabelGrid(geometry, 100 * pixel_width)
|
||||
ORDER BY CASE WHEN name = '' THEN 2000 ELSE poi_class_rank(poi_class(subclass, mapping_key)) END ASC
|
||||
)::int AS "rank"
|
||||
ORDER BY
|
||||
CASE
|
||||
WHEN name = ''
|
||||
THEN 2000
|
||||
ELSE poi_class_rank(poi_class(
|
||||
subclass,
|
||||
mapping_key,
|
||||
subtype
|
||||
), subclass) END ASC
|
||||
)::int AS "rank"
|
||||
FROM (
|
||||
-- Intermediate mapping for subtype and filtering out nameless industrial/office buildings
|
||||
SELECT *,
|
||||
CASE
|
||||
WHEN subclass = 'information'
|
||||
THEN NULLIF(information, '')
|
||||
WHEN subclass = 'place_of_worship'
|
||||
THEN NULLIF(religion, '')
|
||||
WHEN subclass = 'pitch'
|
||||
THEN NULLIF(sport, '')
|
||||
WHEN subclass = 'sports_centre'
|
||||
THEN NULLIF(sport, '')
|
||||
WHEN subclass = 'generator' AND mapping_key = 'power'
|
||||
THEN NULLIF(source, '')
|
||||
ELSE subclass
|
||||
END as subtype
|
||||
FROM (
|
||||
-- etldoc: osm_poi_point -> layer_poi:z12
|
||||
-- etldoc: osm_poi_point -> layer_poi:z13
|
||||
SELECT *,
|
||||
@@ -92,7 +118,9 @@ FROM (
|
||||
FROM osm_poi_polygon
|
||||
WHERE geometry && bbox
|
||||
AND zoom_level >= 14
|
||||
) AS poi_union
|
||||
) AS poi_union_raw
|
||||
WHERE NOT (mapping_key = 'building' AND (subclass = 'office' OR subclass = 'industrial') AND coalesce(name, name_en, '') = '')
|
||||
) AS poi_union
|
||||
ORDER BY "rank"
|
||||
$$ LANGUAGE SQL STABLE
|
||||
PARALLEL SAFE;
|
||||
|
||||
Reference in New Issue
Block a user