From: Edward Date: Tue, 24 Jun 2014 12:51:25 +0000 (+0800) Subject: mysql/core_cities_merge.sql X-Git-Url: http://git.roojs.org/?a=commitdiff_plain;h=f44ee11705dc7fd50d832d53417b9b9705e3b096;p=Pman.Core mysql/core_cities_merge.sql --- diff --git a/mysql/core_cities_merge.sql b/mysql/core_cities_merge.sql index 8275b3af..dfa7e4fb 100644 --- a/mysql/core_cities_merge.sql +++ b/mysql/core_cities_merge.sql @@ -68,10 +68,11 @@ DELIMITER ; DROP FUNCTION IF EXISTS core_cities_merge_division; DELIMITER $$ -CREATE FUNCTION core_cities_merge_division() RETURNS TEXT DETERMINISTIC +CREATE FUNCTION core_cities_merge_division() RETURNS INT DETERMINISTIC BEGIN DECLARE re_done INT DEFAULT FALSE; + DECLARE v_count INT DEFAULT 0; DECLARE v_id INT DEFAULT 0; DECLARE v_iso TEXT DEFAULT ''; DECLARE v_local_name TEXT DEFAULT ''; @@ -96,11 +97,15 @@ CREATE FUNCTION core_cities_merge_division() RETURNS TEXT DETERMINISTIC WHERE type = 'RE'; DECLARE CONTINUE HANDLER FOR NOT FOUND SET re_done = TRUE; + + SET v_count = 0; OPEN re_csr; re_loop: LOOP FETCH re_csr INTO v_id,v_iso,v_local_name,v_in_location; + SET v_count = v_count + 1; + SET v_id_tmp = 0; SELECT id INTO v_id_tmp FROM core_geoip_division WHERE name = v_local_name; @@ -125,7 +130,7 @@ CREATE FUNCTION core_cities_merge_division() RETURNS TEXT DETERMINISTIC END LOOP; CLOSE re_csr; - RETURN 'DONE'; + RETURN v_count; END $$ DELIMITER ;