Hej,
Potrzebuję zbudować zapytanie, które pomoże mi wyświetlić Statki znajdujące się w pobliżu mojego statku, na podstawie współrzędnych geograficznych. Tabela wygląda tak:
ID | Nazwa | Szer | Dłg |
---|---|---|---|
1 | Ship1 | 50 | 40 |
2 | Ship2 | 50 | 10 |
3 | Ship3 | 40 | 30 |
4 | Ship4 | 60 | 20 |
Odległość ma być wyliczona według wzoru: ((Szer2-Szer1)2 + (Dłg2-Dłg1)2).
Początkowo chciałem zastosować funkcję analityczną z której kiedyś korzystalem, a która pozwoliłaby utworzyć dodatkowe kolumny zawierające wartości z rekordu poniżej, ale zapomniałem jej składni (OVER BY ... 1 PRECEEDING? cos takiego) :( Zamiast tego zrobiłem sobie JOINa mojej tabeli do samej siebie z warunkiem t1.ID = (t2.ID+1) - efekt otrzymałem ten sam, ale metoda troche słabsza. Tylko, że teraz do mnie dotarło, że w ten sposób mogę porównać tylko odległość między dwoma statkami, a ja muszę porównać wszystkie kombinacje
Rozwiązanie jest mi potrzebne do wykonania przykładowego zadania więc tabela będzie zawierała niewiele rekordów. Jest to element aplikacji JAVA i nie do końca wiem jak jest identyfikowany mój statek, ale może dla ułatwienia, ustalmy na sztywno jakiś jeden statek.
Proszę o wsparcie. Pozdrawiam :)