Show much more places earlier

pull/24/head
lukasmartinelli 2016-10-30 15:41:46 +01:00
rodzic 67be896e0a
commit 99c225d9a4
1 zmienionych plików z 8 dodań i 5 usunięć

Wyświetl plik

@ -14,7 +14,7 @@ RETURNS TABLE(osm_id bigint, geometry geometry, name text, name_en text, class c
FROM ( FROM (
SELECT osm_id, geometry, name, name_en, place, "rank", SELECT osm_id, geometry, name, name_en, place, "rank",
row_number() OVER ( row_number() OVER (
PARTITION BY LabelGrid(geometry, 150 * pixel_width) PARTITION BY LabelGrid(geometry, 128 * pixel_width)
ORDER BY "rank" ASC NULLS LAST, ORDER BY "rank" ASC NULLS LAST,
place ASC NULLS LAST, place ASC NULLS LAST,
population DESC NULLS LAST, population DESC NULLS LAST,
@ -22,13 +22,16 @@ RETURNS TABLE(osm_id bigint, geometry geometry, name text, name_en text, class c
)::int AS gridrank )::int AS gridrank
FROM osm_city_point FROM osm_city_point
WHERE geometry && bbox WHERE geometry && bbox
AND ((zoom_level BETWEEN 8 AND 9 AND place <= 'town'::city_class) AND ((zoom_level = 8 AND place <= 'town'::city_class)
OR (zoom_level = 10 AND place <= 'village'::city_class) OR (zoom_level BETWEEN 9 AND 10 AND place <= 'village'::city_class)
OR (zoom_level BETWEEN 11 AND 13 AND place <= 'suburb'::city_class) OR (zoom_level BETWEEN 11 AND 13 AND place <= 'suburb'::city_class)
OR (zoom_level >= 14) OR (zoom_level >= 14)
) )
) AS ranked_places ) AS ranked_places
WHERE (zoom_level = 8 AND (gridrank <= 4 OR "rank" IS NOT NULL)) WHERE (zoom_level = 8 AND (gridrank <= 4 OR "rank" IS NOT NULL))
OR (zoom_level BETWEEN 9 AND 12 AND (gridrank <= 9 OR "rank" IS NOT NULL)) OR (zoom_level = 9 AND (gridrank <= 8 OR "rank" IS NOT NULL))
OR (zoom_level >= 13); OR (zoom_level = 10 AND (gridrank <= 12 OR "rank" IS NOT NULL))
OR (zoom_level BETWEEN 11 AND 12 AND (gridrank <= 14 OR "rank" IS NOT NULL))
OR (zoom_level >= 13)
ORDER BY "rank" ASC;
$$ LANGUAGE SQL IMMUTABLE; $$ LANGUAGE SQL IMMUTABLE;