Как определить сложные формы в SQL? - PullRequest
1 голос
/ 11 апреля 2019

Я работаю с набором данных о траектории полета. Содержит много точек долготы и широты. Я хочу извлечь из большой базы данных только те моменты, которые имеют отношение к моему анализу, например, точки в воздушном пространстве Нидерландов.

Пожалуйста, смотрите прикрепленное изображение. ![nlairspace](https://imgur.com/cowoFCn)

Чтобы определить границу, как оранжевые линии, нужно написать следующий код:

SELECT ROUND(lat, 6) AS lat,
       ROUND(lon, 6) AS long,
  FROM state_vectors_data4 sv
 WHERE lat BETWEEN 50.1 AND 54.1 AND 
       lon BETWEEN 2.2 AND 8.2;

Тем самым определяя четыре точки в углах и извлекая все данные в этом квадрате. Существует ли методика захвата всех точек внутри многоугольника? Скажи, что в области рисования между красными линиями? Или, что еще лучше, существует ли методика захвата всех точек в пределах «интервала границы», скажем, области между красной и синей линиями?

...