Hi
Ich bin mir nicht ganz sicher aber das min in having ist irgendwie nicht zielführend
latdiff = min(latdiff) ist gefühlt auch für den ersten wert war
Wenn Aachen erster wert in deiner Tabelle ist latdiff natürlich dem Minimum von latdiff selbst
Was gehen sollte
min(latdiff) < 0.4
Ich hatte ehr gedacht
select min(abs(latitude - 51.04952025)), min(abs(longitude - 13.68193347))
Andreas
Sent from Android device
Am 03.10.2022 14:13 schrieb Luca Bertoncello <[email protected]>:
Hallo Leute!
Irgendwie habe ich jetzt eine Denkfehler und komme nicht weiter...
Also, sagen wir, dass ich eine Tabelle "airports" habe, mit u.a. die
Koordinaten (Latitude und Longitude) der Flugplätzen.
Ich will den nächstgelegen Flugplatz einem Punkt suchen, von dem ich
ebenso die Koordinaten habe.
Mir ist klar, dass um richtig genau zu sein, die Datenbank Funktionen
enthalten muss, die die Entfernung zwischen zwei Punkte berechnen, und
das haben die meisten DB-Engines nicht. Sicherlich nicht SQLite auf
Android...
Aber für meine Zwecke würde es reichen, wenn ich den Flugplatz finde,
bei dem die Differenz zwischen den eigenen Koordinaten und den
Punktkoordinaten am kleinsten ist.
Irgendwie komme ich aber nicht klar...
Mit dieser Anfrage hole ich die Flugplatzdaten zusammen mit den
Koordinatendifferenzen:
SELECT *,
ABS(latitude - 51.04952025) AS latdiff,
ABS(longitude - 13.68193347) AS lngdiff
FROM airports;
Nun will ich den Datensatz finden, bei dem latdiff = MIN(latdiff) und
lngdiff = MIN(lngdiff).
So wäre meine Anfrage:
SELECT *,
ABS(latitude - 51.04952025) AS latdiff,
ABS(longitude - 13.68193347) AS lngdiff
FROM airports
GROUP BY id
HAVING latdiff = min(latdiff) AND lngdiff = min(lngdiff);
Aber das gibt mir völlig flasche Ergebnisse, denn die Koordinaten, die
ich hier nutze, sind in Dresden Cotta und der Flughafen Aachen ist
deutlich weiter als den Flughafen Dresden, von mir gesehen...
Kann jemand mir sagen, wo mein Denkfehler liegt?
Danke
Luca Bertoncello
([email protected])
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.