Funzione per calcolare la distanza tra due coordinate in MySQL
Ecco il codice SQL per creare una funzione che calcola la distanza tra due coordinate in MySQL:
DELIMITER | CREATE FUNCTION GETCOORDINATESDISTANCE(lat_a FLOAT, lon_a FLOAT, lat_b FLOAT, lon_b FLOAT) RETURNS FLOAT DETERMINISTIC BEGIN DECLARE d FLOAT; SELECT (6371 * ACOS(SIN(RADIANS(lat_a)) * SIN(RADIANS(lat_b)) + COS(RADIANS(lat_a)) * COS(RADIANS(lat_b)) * COS(RADIANS(lon_b) - RADIANS(lon_a)))) INTO d; RETURN d; END|
Guida scritta da Mattia il 04/07/2011.