Newer
Older
-- DROP FUNCTION schema_xyz.get_adr_id_b_pg(varchar, varchar);
CREATE OR REPLACE FUNCTION schema_xyz.get_adr_id_b_pg(address_full_in character varying, city_in character varying)
RETURNS bigint
LANGUAGE plpgsql
AS $function$
DECLARE
/*
Returns an adr_id value for an address based on the result_II table (which must contain address_full, city and adr_id).
*/
DECLARE
ergebnis bigint;
BEGIN
select /*+ parallel(auto) */ distinct(adr_id) into ergebnis
from schema_xyz.result_II a
join schema_xyz.result_I b
on a.address_full=b.address_full and coalesce(a.city,'0')=coalesce(b.city,'0')
where b.address_full_original=address_full_in and coalesce(b.city_original,'0')=coalesce(city_in,'0');
return ergebnis;
END;
$function$
;