Merge pull request #177 from CartoDB/173-postal_codes_fix

Updating function for global table
This commit is contained in:
Carla
2015-11-02 12:10:50 +01:00
+6 -5
View File
@@ -136,8 +136,9 @@ $$ LANGUAGE 'plpgsql' SECURITY DEFINER;
--SELECT (geocode_postalcode_polygons(Array['10013','G9H','03782'], Array['USA', 'Canada', 'US'])).* --SELECT (geocode_postalcode_polygons(Array['10013','G9H','03782'], Array['USA', 'Canada', 'US'])).*
-- codes array, countries array -- codes array, countries array
CREATE OR REPLACE FUNCTION geocode_postalcode_polygons(code text[], inputcountries text[]) CREATE FUNCTION geocode_postalcode_polygons(code text[], inputcountries text[]) RETURNS SETOF geocode_namedplace_country_v1
RETURNS SETOF geocode_namedplace_country_v1 AS $$ LANGUAGE plpgsql SECURITY DEFINER
AS $$
DECLARE DECLARE
ret geocode_namedplace_country_v1%rowtype; ret geocode_namedplace_country_v1%rowtype;
adm text[]; adm text[];
@@ -152,9 +153,9 @@ CREATE OR REPLACE FUNCTION geocode_postalcode_polygons(code text[], inputcountri
SELECT SELECT
q, c, ( q, c, (
SELECT the_geom SELECT the_geom
FROM postal_code_polygons FROM global_postal_code_polygons
WHERE postal_code = CASE WHEN a = 'CAN' THEN substring(upper(d.q) from 1 for 3) ELSE upper(d.q) END WHERE postal_code = CASE WHEN a = 'CAN' THEN substring(upper(d.q) from 1 for 3) ELSE upper(d.q) END
AND adm0_a3 = a AND iso3 = a
) geom ) geom
FROM (SELECT unnest(code) q, unnest(inputcountries) c, unnest(adm) a) d FROM (SELECT unnest(code) q, unnest(inputcountries) c, unnest(adm) a) d
) v ) v
@@ -163,7 +164,7 @@ CREATE OR REPLACE FUNCTION geocode_postalcode_polygons(code text[], inputcountri
END LOOP; END LOOP;
RETURN; RETURN;
END END
$$ LANGUAGE 'plpgsql' SECURITY DEFINER; $$;
-- codes array integers, countries array -- codes array integers, countries array