Skip to main content
Skip to main content
Edit this page

ClickPipes for MySQL: Supported data types

Here is the supported data-type mapping for the MySQL ClickPipe:

MySQL TypeClickHouse typeNotes
EnumLowCardinality(String)MySQL doesn't have user-defined types for enums; instead, columns have type enum('a','b','c').
SetStringset is like enum, except from set('a','b','c') value can be 'a,b'. set can only have 64 items, as it's internally a 64-bit bitset.
DecimalDecimalnumeric in MySQL is the same as decimal, with a maximum of 65 digits. Could use more boundary checking.
TinyIntInt8Supports unsigned.
SmallIntInt16Supports unsigned.
MediumInt, IntInt32Supports unsigned.
BigIntInt64Supports unsigned.
YearInt16This type is limited; it only supports 0000 and 1900 to 2155.
TinyText, Text, MediumText, LongTextString
TinyBlob, Blob, MediumBlob, LongBlobString
Char, VarcharString
Binary, VarBinaryString
TinyInt(1)BoolThis is a display hint; MySQL has boolean aliased to tinyint(1).
JSONStringMySQL only; MariaDB json is just an alias for text with a constraint.
Geometry & Geometry TypesStringWKT (Well-Known Text). WKT may suffer from potential precision loss; subtypes need testing.
VectorArray(Float32)MySQL only; MariaDB is adding support soon.
FloatFloat32May lose a bit of precision during initial load due to text protocols.
DoubleFloat64May lose a bit of precision during initial load due to text protocols.
DateDate32
TimeDateTime64(6)The date portion is Unix epoch.
Datetime, TimestampDateTime64(6)