Hallo liebe Community,
habe derzeit das Problem das ich eine Abfrage machen muss, die eine komplizierte Rechnung enthält. Es geht um Städte und Entfernung(Map).
Folgendes ist mein Ziel: Errechnen eines Umkreises und alle im Umkreis von 100 km laden. Nun, in PHP habe ich die Möglichkeit gefunden es zu errechnen, jedoch möchte ich nicht 2mio Daten laden um sie dort zu verarbeiten .
Nun die Rechnung:
Leider funktioniert es so nicht
Habe auch schon versucht die Rechnung zu teilen, doch genau dies ist das eigentliche Problem. Wie kann ich Werte der Tabelle mit einer Rechnung versehen? Gemeint sind hier die Werte die ich per As errechne, z.B. 1+1 as lon.
In PHP habe ich folgende Rechnung:
Kann ich diese Rechnung auf irgendeiner Art und Weise in der DB ausführen?
habe derzeit das Problem das ich eine Abfrage machen muss, die eine komplizierte Rechnung enthält. Es geht um Städte und Entfernung(Map).
Folgendes ist mein Ziel: Errechnen eines Umkreises und alle im Umkreis von 100 km laden. Nun, in PHP habe ich die Möglichkeit gefunden es zu errechnen, jedoch möchte ich nicht 2mio Daten laden um sie dort zu verarbeiten .
Nun die Rechnung:
PHP Code:
SELECT sqrt(`Longitude`-50.998*71.5*2+`Latitude`-8.273*111.3*2) as d FROM `geo` Where d<100
Habe auch schon versucht die Rechnung zu teilen, doch genau dies ist das eigentliche Problem. Wie kann ich Werte der Tabelle mit einer Rechnung versehen? Gemeint sind hier die Werte die ich per As errechne, z.B. 1+1 as lon.
In PHP habe ich folgende Rechnung:
PHP Code:
$lon1=50.998; //Ausgangsort(Längengrad) wird noch ersetzt
$lon2=53.117; //Zielort(Längengrad), soll in der DB gesucht werden
$lat1=8.273; //Ausgangsort(Breitengrad) wird ersetzt
$lat2=8.683; //Zielort(Breitengrad) soll in der D gesucht werden
$l=$lon1-$lon2; //Rechnung 1(Längengrada - Längengradb)
$a=$lat1-$lat2; //Rechnung 2(Breitengrada - Breitengradb)
//mit distance: Entfernung in km
$dx = 71.5 * $l;
$dy = 111.3 * $a;
//Wurzel aus den Ergebnissen ziehen um eine Entfernung zu erhalten
$distance = sqrt($dx * $dx + $dy * $dy);
Comment