Геометрические
ClickHouse поддерживает геометрические типы данных для представления географических объектов — местоположений, территорий и т. д.
См. также
Point
Point задаётся своими координатами X и Y, которые хранятся как Tuple(Float64, Float64).
Пример
Запрос:
Результат:
Кольцо
Ring — это простой многоугольник без отверстий, хранящийся в виде массива точек: Array(Point).
Пример
Запрос:
Результат:
LineString
LineString — это линия, представленная в виде массива точек: Array(Point).
Пример
Запрос:
Результат:
MultiLineString
MultiLineString — это несколько линий, хранящихся в виде массива LineString: Array(LineString).
Пример
Запрос:
Результат:
Многоугольник
Polygon — многоугольник с отверстиями, представленный в виде массива колец: Array(Ring). Первый элемент внешнего массива задаёт внешний контур многоугольника, а все последующие элементы — его отверстия.
Пример
Это многоугольник с одним отверстием:
Результат:
MultiPolygon
MultiPolygon состоит из нескольких полигонов и хранится как массив полигонов: Array(Polygon).
Пример
Этот мультиполигон состоит из двух отдельных полигонов — первый без отверстий, второй — с одним отверстием:
Результат:
Геометрия
Geometry — это общий тип для всех перечисленных выше типов. Он эквивалентен типу Variant, объединяющему эти типы.
Пример
Результат:
Результат: