Brunnel changes in transportation and transportation_name layers (#1027)
https://github.com/openmaptiles/openmaptiles/issues/999 - Point 1 solved only partially - there is `brunnel` value added into zooms 9, 10, 11. For zooms 8 and smaller it would need change in osm_transportation_merge_ tables - I am going to try it but maybe its SQL costs will be to high. - Point 2 solved.
This commit is contained in:
parent
b7429ce6f5
commit
341c4df171
@ -220,9 +220,9 @@ FROM (
|
|||||||
NULL AS shipway,
|
NULL AS shipway,
|
||||||
NULL AS public_transport,
|
NULL AS public_transport,
|
||||||
NULL AS service,
|
NULL AS service,
|
||||||
NULL::boolean AS is_bridge,
|
is_bridge,
|
||||||
NULL::boolean AS is_tunnel,
|
is_tunnel,
|
||||||
NULL::boolean AS is_ford,
|
is_ford,
|
||||||
NULL::boolean AS is_ramp,
|
NULL::boolean AS is_ramp,
|
||||||
NULL::int AS is_oneway,
|
NULL::int AS is_oneway,
|
||||||
NULL AS man_made,
|
NULL AS man_made,
|
||||||
@ -250,9 +250,9 @@ FROM (
|
|||||||
NULL AS shipway,
|
NULL AS shipway,
|
||||||
NULL AS public_transport,
|
NULL AS public_transport,
|
||||||
NULL AS service,
|
NULL AS service,
|
||||||
NULL::boolean AS is_bridge,
|
is_bridge,
|
||||||
NULL::boolean AS is_tunnel,
|
is_tunnel,
|
||||||
NULL::boolean AS is_ford,
|
is_ford,
|
||||||
NULL::boolean AS is_ramp,
|
NULL::boolean AS is_ramp,
|
||||||
NULL::int AS is_oneway,
|
NULL::int AS is_oneway,
|
||||||
NULL AS man_made,
|
NULL AS man_made,
|
||||||
|
|||||||
@ -15,6 +15,7 @@ CREATE OR REPLACE FUNCTION layer_transportation_name(bbox geometry, zoom_level i
|
|||||||
network text,
|
network text,
|
||||||
class text,
|
class text,
|
||||||
subclass text,
|
subclass text,
|
||||||
|
brunnel text,
|
||||||
layer int,
|
layer int,
|
||||||
level int,
|
level int,
|
||||||
indoor int
|
indoor int
|
||||||
@ -41,6 +42,7 @@ SELECT osm_id,
|
|||||||
WHEN highway IS NOT NULL AND highway_class(highway, '', construction) = 'path'
|
WHEN highway IS NOT NULL AND highway_class(highway, '', construction) = 'path'
|
||||||
THEN highway
|
THEN highway
|
||||||
END AS subclass,
|
END AS subclass,
|
||||||
|
brunnel,
|
||||||
NULLIF(layer, 0) AS layer,
|
NULLIF(layer, 0) AS layer,
|
||||||
"level",
|
"level",
|
||||||
CASE WHEN indoor = TRUE THEN 1 END AS indoor
|
CASE WHEN indoor = TRUE THEN 1 END AS indoor
|
||||||
@ -94,6 +96,7 @@ FROM (
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order,
|
z_order,
|
||||||
layer,
|
layer,
|
||||||
@ -116,6 +119,7 @@ FROM (
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order,
|
z_order,
|
||||||
layer,
|
layer,
|
||||||
@ -137,6 +141,7 @@ FROM (
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order,
|
z_order,
|
||||||
layer,
|
layer,
|
||||||
|
|||||||
@ -69,6 +69,13 @@ layer:
|
|||||||
- bridleway
|
- bridleway
|
||||||
- corridor
|
- corridor
|
||||||
- platform
|
- platform
|
||||||
|
brunnel:
|
||||||
|
description: |
|
||||||
|
Mark whether way is a bridge, a tunnel or a ford.
|
||||||
|
values:
|
||||||
|
- bridge
|
||||||
|
- tunnel
|
||||||
|
- ford
|
||||||
level:
|
level:
|
||||||
description: |
|
description: |
|
||||||
Experimental feature! Filled only for steps and footways. Original
|
Experimental feature! Filled only for steps and footways. Original
|
||||||
@ -86,7 +93,7 @@ layer:
|
|||||||
datasource:
|
datasource:
|
||||||
geometry_field: geometry
|
geometry_field: geometry
|
||||||
srid: 900913
|
srid: 900913
|
||||||
query: (SELECT geometry, name, name_en, name_de, {name_languages}, ref, ref_length, network::text, class::text, subclass, layer, level, indoor FROM layer_transportation_name(!bbox!, z(!scale_denominator!))) AS t
|
query: (SELECT geometry, name, name_en, name_de, {name_languages}, ref, ref_length, network::text, class::text, subclass, brunnel, layer, level, indoor FROM layer_transportation_name(!bbox!, z(!scale_denominator!))) AS t
|
||||||
schema:
|
schema:
|
||||||
- ./network_type.sql
|
- ./network_type.sql
|
||||||
- ./update_route_member.sql
|
- ./update_route_member.sql
|
||||||
|
|||||||
@ -17,6 +17,7 @@ SELECT
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
"level",
|
"level",
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
@ -37,6 +38,7 @@ FROM (
|
|||||||
END AS ref,
|
END AS ref,
|
||||||
hl.highway,
|
hl.highway,
|
||||||
hl.construction,
|
hl.construction,
|
||||||
|
brunnel(hl.is_bridge, hl.is_tunnel, hl.is_ford) AS brunnel,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN layer END AS layer,
|
CASE WHEN highway IN ('footway', 'steps') THEN layer END AS layer,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN level END AS level,
|
CASE WHEN highway IN ('footway', 'steps') THEN level END AS level,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN indoor END AS indoor,
|
CASE WHEN highway IN ('footway', 'steps') THEN indoor END AS indoor,
|
||||||
@ -66,6 +68,7 @@ SELECT (ST_Dump(geometry)).geom AS geometry,
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
"level",
|
"level",
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
@ -81,13 +84,14 @@ FROM (
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
"level",
|
"level",
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
network_type,
|
network_type,
|
||||||
min(z_order) AS z_order
|
min(z_order) AS z_order
|
||||||
FROM osm_transportation_name_network
|
FROM osm_transportation_name_network
|
||||||
GROUP BY name, name_en, name_de, tags, ref, highway, construction, "level", layer, indoor, network_type
|
GROUP BY name, name_en, name_de, tags, ref, highway, construction, brunnel, "level", layer, indoor, network_type
|
||||||
) AS highway_union
|
) AS highway_union
|
||||||
;
|
;
|
||||||
CREATE INDEX IF NOT EXISTS osm_transportation_name_linestring_name_ref_idx ON osm_transportation_name_linestring (coalesce(name, ''), coalesce(ref, ''));
|
CREATE INDEX IF NOT EXISTS osm_transportation_name_linestring_name_ref_idx ON osm_transportation_name_linestring (coalesce(name, ''), coalesce(ref, ''));
|
||||||
@ -108,6 +112,7 @@ SELECT ST_Simplify(geometry, 50) AS geometry,
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order
|
z_order
|
||||||
FROM osm_transportation_name_linestring
|
FROM osm_transportation_name_linestring
|
||||||
@ -135,6 +140,7 @@ SELECT ST_Simplify(geometry, 120) AS geometry,
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order
|
z_order
|
||||||
FROM osm_transportation_name_linestring_gen1
|
FROM osm_transportation_name_linestring_gen1
|
||||||
@ -162,6 +168,7 @@ SELECT ST_Simplify(geometry, 200) AS geometry,
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order
|
z_order
|
||||||
FROM osm_transportation_name_linestring_gen2
|
FROM osm_transportation_name_linestring_gen2
|
||||||
@ -189,6 +196,7 @@ SELECT ST_Simplify(geometry, 500) AS geometry,
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
network,
|
network,
|
||||||
z_order
|
z_order
|
||||||
FROM osm_transportation_name_linestring_gen3
|
FROM osm_transportation_name_linestring_gen3
|
||||||
@ -275,6 +283,7 @@ BEGIN
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
level,
|
level,
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
@ -295,6 +304,7 @@ BEGIN
|
|||||||
END AS ref,
|
END AS ref,
|
||||||
hl.highway,
|
hl.highway,
|
||||||
hl.construction,
|
hl.construction,
|
||||||
|
brunnel(hl.is_bridge, hl.is_tunnel, hl.is_ford) AS brunnel,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN layer END AS layer,
|
CASE WHEN highway IN ('footway', 'steps') THEN layer END AS layer,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN level END AS level,
|
CASE WHEN highway IN ('footway', 'steps') THEN level END AS level,
|
||||||
CASE WHEN highway IN ('footway', 'steps') THEN indoor END AS indoor,
|
CASE WHEN highway IN ('footway', 'steps') THEN indoor END AS indoor,
|
||||||
@ -360,6 +370,7 @@ CREATE TABLE IF NOT EXISTS transportation_name.name_changes
|
|||||||
ref character varying,
|
ref character varying,
|
||||||
highway character varying,
|
highway character varying,
|
||||||
construction character varying,
|
construction character varying,
|
||||||
|
brunnel character varying,
|
||||||
level integer,
|
level integer,
|
||||||
layer integer,
|
layer integer,
|
||||||
indoor boolean,
|
indoor boolean,
|
||||||
@ -372,16 +383,16 @@ BEGIN
|
|||||||
IF (tg_op IN ('DELETE', 'UPDATE'))
|
IF (tg_op IN ('DELETE', 'UPDATE'))
|
||||||
THEN
|
THEN
|
||||||
INSERT INTO transportation_name.name_changes(is_old, osm_id, name, name_en, name_de, ref, highway, construction,
|
INSERT INTO transportation_name.name_changes(is_old, osm_id, name, name_en, name_de, ref, highway, construction,
|
||||||
level, layer, indoor, network_type)
|
brunnel, level, layer, indoor, network_type)
|
||||||
VALUES (TRUE, old.osm_id, old.name, old.name_en, old.name_de, old.ref, old.highway, old.construction, old.level,
|
VALUES (TRUE, old.osm_id, old.name, old.name_en, old.name_de, old.ref, old.highway, old.construction,
|
||||||
old.layer, old.indoor, old.network_type);
|
old.brunnel, old.level, old.layer, old.indoor, old.network_type);
|
||||||
END IF;
|
END IF;
|
||||||
IF (tg_op IN ('UPDATE', 'INSERT'))
|
IF (tg_op IN ('UPDATE', 'INSERT'))
|
||||||
THEN
|
THEN
|
||||||
INSERT INTO transportation_name.name_changes(is_old, osm_id, name, name_en, name_de, ref, highway, construction,
|
INSERT INTO transportation_name.name_changes(is_old, osm_id, name, name_en, name_de, ref, highway, construction,
|
||||||
level, layer, indoor, network_type)
|
brunnel, level, layer, indoor, network_type)
|
||||||
VALUES (FALSE, new.osm_id, new.name, new.name_en, new.name_de, new.ref, new.highway, new.construction, new.level,
|
VALUES (FALSE, new.osm_id, new.name, new.name_en, new.name_de, new.ref, new.highway, new.construction,
|
||||||
new.layer, new.indoor, new.network_type);
|
new.brunnel, new.level, new.layer, new.indoor, new.network_type);
|
||||||
END IF;
|
END IF;
|
||||||
RETURN NULL;
|
RETURN NULL;
|
||||||
END;
|
END;
|
||||||
@ -412,13 +423,14 @@ BEGIN
|
|||||||
|
|
||||||
-- Compact the change history to keep only the first and last version, and then uniq version of row
|
-- Compact the change history to keep only the first and last version, and then uniq version of row
|
||||||
CREATE TEMP TABLE name_changes_compact AS
|
CREATE TEMP TABLE name_changes_compact AS
|
||||||
SELECT DISTINCT ON (name, name_en, name_de, ref, highway, construction, level, layer, indoor, network_type)
|
SELECT DISTINCT ON (name, name_en, name_de, ref, highway, construction, brunnel, level, layer, indoor, network_type)
|
||||||
name,
|
name,
|
||||||
name_en,
|
name_en,
|
||||||
name_de,
|
name_de,
|
||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
level,
|
level,
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
@ -449,6 +461,7 @@ BEGIN
|
|||||||
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
AND n.highway IS NOT DISTINCT FROM c.highway
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
AND n.construction IS NOT DISTINCT FROM c.construction
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
AND n.level IS NOT DISTINCT FROM c.level
|
AND n.level IS NOT DISTINCT FROM c.level
|
||||||
AND n.layer IS NOT DISTINCT FROM c.layer
|
AND n.layer IS NOT DISTINCT FROM c.layer
|
||||||
AND n.indoor IS NOT DISTINCT FROM c.indoor
|
AND n.indoor IS NOT DISTINCT FROM c.indoor
|
||||||
@ -464,6 +477,7 @@ BEGIN
|
|||||||
ref,
|
ref,
|
||||||
highway,
|
highway,
|
||||||
construction,
|
construction,
|
||||||
|
brunnel,
|
||||||
level,
|
level,
|
||||||
layer,
|
layer,
|
||||||
indoor,
|
indoor,
|
||||||
@ -480,6 +494,7 @@ BEGIN
|
|||||||
n.ref,
|
n.ref,
|
||||||
n.highway,
|
n.highway,
|
||||||
n.construction,
|
n.construction,
|
||||||
|
n.brunnel,
|
||||||
n.level,
|
n.level,
|
||||||
n.layer,
|
n.layer,
|
||||||
n.indoor,
|
n.indoor,
|
||||||
@ -493,68 +508,125 @@ BEGIN
|
|||||||
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
AND n.highway IS NOT DISTINCT FROM c.highway
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
AND n.construction IS NOT DISTINCT FROM c.construction
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
AND n.level IS NOT DISTINCT FROM c.level
|
AND n.level IS NOT DISTINCT FROM c.level
|
||||||
AND n.layer IS NOT DISTINCT FROM c.layer
|
AND n.layer IS NOT DISTINCT FROM c.layer
|
||||||
AND n.indoor IS NOT DISTINCT FROM c.indoor
|
AND n.indoor IS NOT DISTINCT FROM c.indoor
|
||||||
AND n.network_type IS NOT DISTINCT FROM c.network_type
|
AND n.network_type IS NOT DISTINCT FROM c.network_type
|
||||||
GROUP BY n.name, n.name_en, n.name_de, n.ref, n.highway, n.construction, n.level, n.layer, n.indoor, n.network_type
|
GROUP BY n.name, n.name_en, n.name_de, n.ref, n.highway, n.construction, n.brunnel, n.level, n.layer, n.indoor, n.network_type
|
||||||
) AS highway_union;
|
) AS highway_union;
|
||||||
|
|
||||||
-- REFRESH osm_transportation_name_linestring_gen1
|
-- REFRESH osm_transportation_name_linestring_gen1
|
||||||
DELETE FROM osm_transportation_name_linestring_gen1 AS n
|
DELETE FROM osm_transportation_name_linestring_gen1 AS n
|
||||||
USING name_changes_compact AS c
|
USING name_changes_compact AS c
|
||||||
WHERE
|
WHERE
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
INSERT INTO osm_transportation_name_linestring_gen1
|
INSERT INTO osm_transportation_name_linestring_gen1
|
||||||
SELECT n.*
|
SELECT n.*
|
||||||
FROM osm_transportation_name_linestring_gen1_view AS n
|
FROM osm_transportation_name_linestring_gen1_view AS n
|
||||||
JOIN name_changes_compact AS c ON
|
JOIN name_changes_compact AS c ON
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
-- REFRESH osm_transportation_name_linestring_gen2
|
-- REFRESH osm_transportation_name_linestring_gen2
|
||||||
DELETE FROM osm_transportation_name_linestring_gen2 AS n
|
DELETE FROM osm_transportation_name_linestring_gen2 AS n
|
||||||
USING name_changes_compact AS c
|
USING name_changes_compact AS c
|
||||||
WHERE
|
WHERE
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
INSERT INTO osm_transportation_name_linestring_gen2
|
INSERT INTO osm_transportation_name_linestring_gen2
|
||||||
SELECT n.*
|
SELECT n.*
|
||||||
FROM osm_transportation_name_linestring_gen2_view AS n
|
FROM osm_transportation_name_linestring_gen2_view AS n
|
||||||
JOIN name_changes_compact AS c ON
|
JOIN name_changes_compact AS c ON
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
-- REFRESH osm_transportation_name_linestring_gen3
|
-- REFRESH osm_transportation_name_linestring_gen3
|
||||||
DELETE FROM osm_transportation_name_linestring_gen3 AS n
|
DELETE FROM osm_transportation_name_linestring_gen3 AS n
|
||||||
USING name_changes_compact AS c
|
USING name_changes_compact AS c
|
||||||
WHERE
|
WHERE
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
INSERT INTO osm_transportation_name_linestring_gen3
|
INSERT INTO osm_transportation_name_linestring_gen3
|
||||||
SELECT n.*
|
SELECT n.*
|
||||||
FROM osm_transportation_name_linestring_gen3_view AS n
|
FROM osm_transportation_name_linestring_gen3_view AS n
|
||||||
JOIN name_changes_compact AS c ON
|
JOIN name_changes_compact AS c ON
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
-- REFRESH osm_transportation_name_linestring_gen4
|
-- REFRESH osm_transportation_name_linestring_gen4
|
||||||
DELETE FROM osm_transportation_name_linestring_gen4 AS n
|
DELETE FROM osm_transportation_name_linestring_gen4 AS n
|
||||||
USING name_changes_compact AS c
|
USING name_changes_compact AS c
|
||||||
WHERE
|
WHERE
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
INSERT INTO osm_transportation_name_linestring_gen4
|
INSERT INTO osm_transportation_name_linestring_gen4
|
||||||
SELECT n.*
|
SELECT n.*
|
||||||
FROM osm_transportation_name_linestring_gen4_view AS n
|
FROM osm_transportation_name_linestring_gen4_view AS n
|
||||||
JOIN name_changes_compact AS c ON
|
JOIN name_changes_compact AS c ON
|
||||||
coalesce(n.name, n.ref) = c.name_ref AND
|
coalesce(n.name, n.ref) = c.name_ref
|
||||||
n.name IS NOT DISTINCT FROM c.name AND n.name_en IS NOT DISTINCT FROM c.name_en AND n.name_de IS NOT DISTINCT FROM c.name_de AND n.ref IS NOT DISTINCT FROM c.ref AND n.highway IS NOT DISTINCT FROM c.highway AND n.construction IS NOT DISTINCT FROM c.construction AND n.network IS NOT DISTINCT FROM c.network_type;
|
AND n.name IS NOT DISTINCT FROM c.name
|
||||||
|
AND n.name_en IS NOT DISTINCT FROM c.name_en
|
||||||
|
AND n.name_de IS NOT DISTINCT FROM c.name_de
|
||||||
|
AND n.ref IS NOT DISTINCT FROM c.ref
|
||||||
|
AND n.highway IS NOT DISTINCT FROM c.highway
|
||||||
|
AND n.construction IS NOT DISTINCT FROM c.construction
|
||||||
|
AND n.brunnel IS NOT DISTINCT FROM c.brunnel
|
||||||
|
AND n.network IS NOT DISTINCT FROM c.network_type;
|
||||||
|
|
||||||
DROP TABLE name_changes_compact;
|
DROP TABLE name_changes_compact;
|
||||||
DELETE FROM transportation_name.name_changes;
|
DELETE FROM transportation_name.name_changes;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user