CREATE DEFINER=`root`@`%` FUNCTION `getChildOrg`(orgid INT) RETURNS varchar(255) CHARSET utf8mb4
READS SQL DATA
BEGIN
DECLARE oTemp VARCHAR(3000);
DECLARE oTempChild VARCHAR(3000);
SET oTemp = '';
SET oTempChild = CAST(orgid AS CHAR);
WHILE oTempChild IS NOT NULL
DO
SET oTemp = CONCAT(oTemp,',',oTempChild);
SELECT GROUP_CONCAT(org_code) INTO oTempChild FROM enn_org WHERE FIND_IN_SET(org_parent_code,oTempChild) > 0;
END WHILE;
RETURN oTemp;
END
组织递归查询(摘抄)
SELECT
*, ROUND(
6378.138 * 2 * ASIN(
SQRT(
POW(
SIN(
(
#{latitude} * PI() / 180 - c.camera_latitude * PI() / 180
) / 2
),
2
) + COS(#{latitude} * PI() / 180) * COS(c.camera_latitude * PI() / 180) * POW(
SIN(
(
#{longitude} * PI() / 180 - c.camera_longitude * PI() / 180
) / 2
),
2
)
)
) * 1000
) AS juli
FROM
se_camera c WHERE camera_latitude IS not NULL
HAVING juli < 500
百度坐标