X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/691ec0858601f91adb942d2cb5d3a9b844005780..b8d41cf38cb9abead17f53fc42c28b65e0ae62b7:/lib-sql/functions/address_lookup.sql diff --git a/lib-sql/functions/address_lookup.sql b/lib-sql/functions/address_lookup.sql index f18970ba..7fb11cfb 100644 --- a/lib-sql/functions/address_lookup.sql +++ b/lib-sql/functions/address_lookup.sql @@ -43,8 +43,8 @@ BEGIN END IF; END LOOP; - -- anything will do as a fallback - just take the first name type thing there is - RETURN trim((avals(name))[1]); + -- as a fallback - take the last element since it is the default name + RETURN trim((avals(name))[array_length(avals(name), 1)]); END; $$ LANGUAGE plpgsql IMMUTABLE; @@ -231,7 +231,7 @@ BEGIN FOR location IN SELECT placex.place_id, osm_type, osm_id, name, class, type, coalesce(extratags->'linked_place', extratags->'place') as place_type, - admin_level, fromarea, isaddress, + admin_level, fromarea, isaddress and linked_place_id is NULL as isaddress, CASE WHEN rank_address = 11 THEN 5 ELSE rank_address END as rank_address, distance, country_code, postcode FROM place_addressline join placex on (address_place_id = placex.place_id)