У меня есть таблица, использующая Linestring для записи траектории пользователей:
CREATE TABLE users
(
id serial DISTINCT,
trajectory Geometry(LINESTRING)
);
У меня вопрос: учитывая набор точек B, как выбрать всех пользователей, которые были рядом с точками в B. (Пользователи, которые были ближе, чем n метров к любой точке в B)
Я пробовал гуглить "postgis, если есть точка в Linestring", но ничего не нашел. Я могу думать о том, чтобы создать новую таблицу, подобную этой (разделить строку в первой таблице, одну строку на одну точку, в которой был пользователь), а затем использовать функции в одной точке:
CREATE TABLE users
(
user_id serial,
have_been_to_point Geometry(POINT)
);
Есть ли лучший способ сделать это?