Używam MySQL Spatial Extensions do przechowywania danych o drogach i hotelach. Przechowuję dane hotelu jako punkt, gdy przechowuję dane drogowe jako LineString. Tabele wyglądają tak, jakby wizualizacja instancji wyglądała następująco: wizualizacja instancji.Znajdź N najbliższego LineString z punktu przy użyciu rozszerzeń przestrzennych MySQL
Mój problem jest podana liczba N i punkt P, co jest kwerenda SQL, aby znaleźć najbliższe N dróg z punktu P? Odległość jest określona przez najmniejszą prostopadłą odległość między segmentem na drodze do punktu pokazanego powyżej. (chociaż w rzeczywistości najbliższa odległość powinna znajdować się między bramą autostrady a hotelem, ale w tym przypadku możemy wprowadzić autostradę z dowolnego punktu: P)
Jeśli nie ma jednego rozwiązania instrukcji SQL dla tego problem, pośrednie zapytanie SQL i przetwarzanie końcowe są dla mnie akceptowalne. Ale jaka byłaby wydajna kwerenda SQL i jak postprocesować dane?
Masz już swoją odpowiedź? :) – bonCodigo
Upewnij się, że używasz MySQL 5.5 inaczej funkcja przestrzenna nie jest zaimplementowana na tyle, aby odpowiedzieć na twoje pytanie – TheSteve0