MYSQL Funktion gibt flasches ERgebnis, PHP funktioniert
Posted: 2010-11-12 17:16
Hallo,
ich benutze eine PHP Funktion um die Entfernung von 2 Orten zu ermitteln:
Dazu nehme ich jeweils die (Längen- und Breitengrade) der Orte:
Folgende Funktion errechnet die Entfernung:
Das Ergebnis stimmt: $distance = 16.090628132792 km
Jetzt möchte ich das ganze gerne als MYSQL Abfrage nutzen, die später auch anstelle der konstanten werte entsprechend auf DB Felder zugreift:
Das ganze umgeschrieben auf MySQL (zum Test Variablen durch Werte ersetzt):
Jetzt bekomme ich einen Rückgabewert von 966.0624898509
---------
Keine Ahnung was ich da falsch mache, eine Syntaxfehlermeldung kommt auch nicht. Wahrscheinlich eine Kleinigkeit aber ich bin mittlerweile betriebsblind...
Kann mir jemand sagen wie die SQL Funktion richtig formuliert lauten muss ?
Vielen Dank.
Gruß
Markus
ich benutze eine PHP Funktion um die Entfernung von 2 Orten zu ermitteln:
Dazu nehme ich jeweils die (Längen- und Breitengrade) der Orte:
Code: Select all
$x1 = '7.6025390625';// Longitude
$y1 = '50.273333333332';// Latitude
$x2 = '7.6';// Longitude
$y2 = '50.4167';// Latitude
Code: Select all
$distance = acos(sin($y2=deg2rad($y2)) * sin($y1=deg2rad($y1))+cos($y2) * cos($y1) * cos(deg2rad($x2) - deg2rad($x1))) * (6380);
Jetzt möchte ich das ganze gerne als MYSQL Abfrage nutzen, die später auch anstelle der konstanten werte entsprechend auf DB Felder zugreift:
Das ganze umgeschrieben auf MySQL (zum Test Variablen durch Werte ersetzt):
Code: Select all
SELECT acos(sin(50.4167=radians(50.4167)) * sin(50.273333333332=radians(50.273333333332))+cos(50.4167) * cos(50.273333333332) * cos(radians(7.6) - radians(7.628333333332))) * (6380) AS Entfernung
---------
Keine Ahnung was ich da falsch mache, eine Syntaxfehlermeldung kommt auch nicht. Wahrscheinlich eine Kleinigkeit aber ich bin mittlerweile betriebsblind...
Kann mir jemand sagen wie die SQL Funktion richtig formuliert lauten muss ?
Vielen Dank.
Gruß
Markus