У меня есть таблица mysql с полем типа POLYGON, содержащая несколько полигонов, однако я обнаружил, что мне также нужно хранить ТОЧКИ.
Я бы хотел хранить геометрические типы POLYGONS и POINTS в одном поле.
Страница справочника предлагает это возможно при использовании типа данных GEOMETRY.
Есть ли какие-либо недостатки в использовании более общего типа геометрии GEOMETRY для этого? Потеряю ли я доступ к какой-либо дополнительной функциональности из-за смешивания ПОЛИГОНОВ и ТОЧЕК, когда приду к запросу этих данных на более позднем этапе?
EDITED
Чтобы прояснить мою ситуацию:
У меня есть таблица, называющая это «местоположения», каждое местоположение лучше всего будет описывать как одну ТОЧКУ или область ПОЛИГОН, но они всегда будут иметь одну или другую.
Так что структура должна напоминать:
locations:
id int
title var
single_point (POINT)
area (POLYGON)
или
locations:
id int
title var
coords (GEOMETRY)
или, как предлагается в комментариях ниже, решение с 3 таблицами?
Точки и полигоны будут в первую очередь помещаться в файлы kml для отображения на веб-картах.
Я предполагаю, что геометрические поля будут проиндексированы, чтобы наилучшим образом использовать другие запросы пространственных типов в будущем (ближайшая, наибольшая область и т. Д.).