]> granicus.if.org Git - postgis/commitdiff
revise so works under 8.4 evidentially in 8.4 INTO USING clauses are not interchangea...
authorRegina Obe <lr@pcorp.us>
Thu, 1 Sep 2011 12:35:45 +0000 (12:35 +0000)
committerRegina Obe <lr@pcorp.us>
Thu, 1 Sep 2011 12:35:45 +0000 (12:35 +0000)
git-svn-id: http://svn.osgeo.org/postgis/trunk@7800 b70326c6-7e19-0410-871a-916f4a2858ee

extras/tiger_geocoder/tiger_2010/geocode/reverse_geocode.sql

index d610ca7a5b642e337bb3f471e1ffb0de562a906e..256563c0139d6938d58eff00bda58e8792ddf728 100644 (file)
@@ -60,23 +60,23 @@ BEGIN
        END IF;
        -- locate county
        var_stmt := 'SELECT countyfp, name  FROM  county WHERE  statefp =  $1 AND ST_Intersects(the_geom, $2) LIMIT 1;';
-       EXECUTE var_stmt USING var_state, var_pt INTO var_countyfp, var_county;
+       EXECUTE var_stmt INTO var_countyfp, var_county USING var_state, var_pt ;
 
        --locate zip
        var_stmt := 'SELECT zcta5ce  FROM zcta5 WHERE statefp = $1 AND ST_Intersects(the_geom, $2)  LIMIT 1;';
-       EXECUTE var_stmt USING var_state, var_pt INTO var_zip;
+       EXECUTE var_stmt INTO var_zip USING var_state, var_pt;
        -- locate city
        IF var_zip > '' THEN
              var_addy.zip := var_zip ;
        END IF;
        
        var_stmt := 'SELECT z.name  FROM place As z WHERE  z.statefp =  $1 AND ST_Intersects(the_geom, $2) LIMIT 1;';
-       EXECUTE var_stmt USING var_state, var_pt INTO var_place;
+       EXECUTE var_stmt INTO var_place USING var_state, var_pt ;
        IF var_place > '' THEN
                        var_addy.location := var_place;
        ELSE
                var_stmt := 'SELECT z.name  FROM cousub As z WHERE  z.statefp =  $1 AND ST_Intersects(the_geom, $2) LIMIT 1;';
-               EXECUTE var_stmt USING var_state, var_pt INTO var_place;
+               EXECUTE var_stmt INTO var_place USING var_state, var_pt ;
                IF var_place > '' THEN
                        var_addy.location := var_place;
                -- ELSIF var_zip > '' THEN
@@ -138,23 +138,6 @@ BEGIN
        IF var_debug = true THEN
            RAISE NOTICE 'Statement 1: %', var_stmt;
        END IF;
-       /** FOR var_redge IN
-               SELECT * 
-               FROM (SELECT DISTINCT ON(fullname)  foo.fullname, foo.stusps, foo.zip, 
-                          (SELECT z.place FROM zip_state_loc AS z WHERE z.zip = foo.zip and z.statefp = foo.statefp LIMIT 1) As place, foo.center_pt,
-                         side, to_number(fromhn, '999999') As fromhn, to_number(tohn, '999999') As tohn, ST_GeometryN(ST_Multi(line),1) As line, foo.dist
-               FROM 
-                 (SELECT e.the_geom As line, e.fullname, a.zip, s.abbrev As stusps, ST_ClosestPoint(e.the_geom, var_pt) As center_pt, e.statefp, a.side, a.fromhn, a.tohn, ST_Distance_Sphere(e.the_geom, var_pt) As dist
-                               FROM (SELECT * FROM edges WHERE statefp = var_state AND countyfp = var_countyfp ) AS e INNER JOIN (SELECT * FROM state_lookup WHERE statefp = var_state ) As s ON (e.statefp = s.statefp )
-                                       INNER JOIN (SELECT * FROM faces WHERE statefp = var_state AND countyfp = var_countyfp ) As fl ON (e.tfidl = fl.tfid AND e.statefp = fl.statefp)
-                                       INNER JOIN (SELECT * FROM faces WHERE statefp = var_state AND countyfp = var_countyfp ) As fr ON (e.tfidr = fr.tfid AND e.statefp = fr.statefp)
-                                       INNER JOIN (SELECT * FROM addr WHERE statefp = var_state ) As a ON ( e.tlid = a.tlid AND e.statefp = a.statefp AND  
-                                          ( ( ST_Covers(fl.the_geom, var_pt) AND a.side = 'L') OR ( ST_Covers(fr.the_geom, var_pt) AND a.side = 'R' ) ) )
-                                       -- INNER JOIN zip_state_loc As z ON (a.statefp =  z.statefp AND a.zip = z.zip) 
-                               WHERE ST_DWithin(e.the_geom, var_pt, 0.005)
-                               ORDER BY ST_Distance(e.the_geom, var_pt) LIMIT 4) As foo 
-                               WHERE dist < 150 --less than 150 m
-                               ORDER BY foo.fullname, foo.dist) As f ORDER BY f.dist LOOP **/
 
     FOR var_redge IN EXECUTE var_stmt LOOP
         IF var_debug THEN
@@ -231,10 +214,7 @@ BEGIN
     IF var_debug THEN
                RAISE NOTICE 'End Get matching edges loop: %', clock_timestamp();
        END IF;
-    
-
-
-                       
+       
        RETURN;   
 END;
 $$