Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
26
Task/Haversine-formula/MySQL/haversine-formula.sql
Normal file
26
Task/Haversine-formula/MySQL/haversine-formula.sql
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
DELIMITER $$
|
||||
|
||||
CREATE FUNCTION haversine (
|
||||
lat1 FLOAT, lon1 FLOAT,
|
||||
lat2 FLOAT, lon2 FLOAT
|
||||
) RETURNS FLOAT
|
||||
NO SQL DETERMINISTIC
|
||||
BEGIN
|
||||
DECLARE r FLOAT unsigned DEFAULT 6372.8;
|
||||
DECLARE dLat FLOAT unsigned;
|
||||
DECLARE dLon FLOAT unsigned;
|
||||
DECLARE a FLOAT unsigned;
|
||||
DECLARE c FLOAT unsigned;
|
||||
|
||||
SET dLat = ABS(RADIANS(lat2 - lat1));
|
||||
SET dLon = ABS(RADIANS(lon2 - lon1));
|
||||
SET lat1 = RADIANS(lat1);
|
||||
SET lat2 = RADIANS(lat2);
|
||||
|
||||
SET a = POW(SIN(dLat / 2), 2) + COS(lat1) * COS(lat2) * POW(SIN(dLon / 2), 2);
|
||||
SET c = 2 * ASIN(SQRT(a));
|
||||
|
||||
RETURN (r * c);
|
||||
END$$
|
||||
|
||||
DELIMITER ;
|
||||
Loading…
Add table
Add a link
Reference in a new issue