X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/0d189ac5df8341e80a118bc8e67e126d03cd5302..af6b9fdb399f6f478ccfcd60f57ad223c7dc3cdf:/sql/functions/address_lookup.sql?ds=sidebyside

diff --git a/sql/functions/address_lookup.sql b/sql/functions/address_lookup.sql
index 9a4c630c..7885d0a9 100644
--- a/sql/functions/address_lookup.sql
+++ b/sql/functions/address_lookup.sql
@@ -60,14 +60,16 @@ BEGIN
   prevresult := '';
 
   FOR location IN
-    SELECT * FROM get_addressdata(for_place_id, housenumber)
+    SELECT name,
+       CASE WHEN place_id = for_place_id THEN 99 ELSE rank_address END as rank_address
+    FROM get_addressdata(for_place_id, housenumber)
     WHERE isaddress order by rank_address desc
   LOOP
     currresult := trim(get_name_by_language(location.name, languagepref));
     IF currresult != prevresult AND currresult IS NOT NULL
        AND result[(100 - location.rank_address)] IS NULL
     THEN
-      result[(100 - location.rank_address)] := trim(get_name_by_language(location.name, languagepref));
+      result[(100 - location.rank_address)] := currresult;
       prevresult := currresult;
     END IF;
   END LOOP;
