mysql_datatypes_support_level
decimal, datetime64, date2Date32, date2String или geometry. Все современные сопоставления (decimal, datetime64, date2Date32, geometry) включены по умолчанию.
decimal: преобразует типыNUMERICиDECIMALвDecimal, если это допускает precision.datetime64: преобразует типыDATETIMEиTIMESTAMPвDateTime64вместоDateTime, если precision не равна0.date2Date32: преобразуетDATEвDate32вместоDate. Имеет приоритет надdate2String.date2String: преобразуетDATEвStringвместоDate. Переопределяетсяdatetime64.geometry: преобразует пространственные типы MySQL (LINESTRING,POLYGON,MULTILINESTRING,MULTIPOLYGON,MULTIPOINT) в соответствующие геометрические типы ClickHouse, а обобщенный типGEOMETRY— в универсальный типGeometry.POINTвсегда преобразуется вPointнезависимо от этой опции. Поскольку обобщенный столбецGEOMETRYможет содержать любой подтип, при чтении значения, подтип которого не имеет аналога в ClickHouse (GEOMETRYCOLLECTION), генерируется исключение; столбцы, объявленные какGEOMETRYCOLLECTION, сопоставляются сString. Допускающий NULL пространственный столбец, отличный отPOINT, также сопоставляется сNullable(String), посколькуPoint— единственный геометрический тип, который может быть вложен вNullable. Каждая такая строка представляет собой 4-байтовый префикс SRID, за которым следует полезная нагрузка WKB, возвращаемая MySQL. Всё вышесказанное применяется, когда схема выводится из типов столбцов таблицы MySQL; если источником является запрос (аргументquery(...)табличной функцииmysqlили движка таблицыMySQL), MySQL сообщает о каждом пространственном столбце результата как об обобщенномGEOMETRYбез конкретного подтипа, поэтому такие столбцы, включаяPOINT, сопоставляются сString(Nullable(String), если допускают NULL).