Temat: Relacje wiele do wielu- problem z zapytaniem
Witam
Mam problem ze skonstruowaniem zapytania, mam trzy bazy:
1)mapaDodaj( id_punkt, lat, lng, nazwa)
np. 123|| 23.000 || 19.000 || wierchomla
2)ulubione(id, obiekt, uzytkownik)
np. 1 || 123 || Michal
//kolumna OBIEKT przechowuje numery ID obiektow z bazy mapaDodaj
3)rejestracja (id_user, login)
np. 12|| Michal
Potrzebuje teraz zrobic takie zapytanie:
SELECT lat::float, lng::float, nazwa, grubosctrasa, gruboscpozatrasa, ikona, kamera,
( 6371 * acos( cos( radians("+latLok+")) * cos( radians( lat::float ) ) * cos( radians( lng::float ) - radians("+lngLok+") ) + sin( radians("+latLok+") ) * sin( radians( lat::float ) ) ))
AS dystans
FROM mapaDodaj
WHERE id_punkt= ID_punktu_z_mapaDodaj
ORDER BY dystans
LIMIT 6
te cosinusy i sinusy to rownanie matematyczne przeliczajace koordy geograficzne na stopnie i wstawiajace je do kolumny DYSTANS.
Co potrzebuje:
Zeby wyswietlily mi sie obiekty z tabeli mapaDodaj z obiektami ktorych ID znajduje sie w tabeli ulubione, wybralo je, a nastepnie za pomoca zrobionej kolumny "dystans" posortowalo sie wg. najblizszej lokalizacji
Jakiekolwiek pomysly?