У меня есть таблица, в которой я храню журналы местоположений всех пользователей, откуда мне нужно получить последнее местоположение всех пользователей и отсортировать его по расстоянию от указанной геометрической точки.
Таблица местоположений
id | user_id | location | time |
---|---|---|---|
1 | 1 | POINT | timestamp |
2 | 1 | POINT | timestamp |
3 | 2 | POINT | timestamp |
4 | 2 | POINT | timestamp |
Результат должен быть
id | user_id | location | time |
---|---|---|---|
2 | 1 | POINT | timestamp |
4 | 2 | POINT | timestamp |
Затем мне нужно отсортировать пользователей, которые находятся ближе всего к указанной точке. Я понял, как использовать функцию MySQL Spatial, чтобы получить расстояние, но не могу отсортировать результат выше. Я рецензировал это для получения последнего местоположения и этого из другого ответа на переполнение стека, но с трудом используя оба вместе.
Я ценю любую помощь и спасибо заранее