mysql_datatypes_support_level
decimal, datetime64, date2Date32, date2String ou geometry. Tous les mappages modernes (decimal, datetime64, date2Date32, geometry) sont activés par défaut.
decimal: convertit les typesNUMERICetDECIMALenDecimallorsque la précision le permet.datetime64: convertit les typesDATETIMEetTIMESTAMPenDateTime64au lieu deDateTimelorsque la précision n’est pas0.date2Date32: convertitDATEenDate32au lieu deDate. Prend préséance surdate2String.date2String: convertitDATEenStringau lieu deDate. Est remplacé pardatetime64.geometry: convertit les types spatiaux de MySQL (LINESTRING,POLYGON,MULTILINESTRING,MULTIPOLYGON,MULTIPOINT) en types géométriques ClickHouse correspondants, et le type génériqueGEOMETRYen type englobantGeometry.POINTest toujours converti enPoint, indépendamment de cette option. Comme une colonneGEOMETRYgénérique peut contenir n’importe quel sous-type, la lecture d’une valeur dont le sous-type n’a pas d’équivalent dans ClickHouse (GEOMETRYCOLLECTION) déclenche une exception à la lecture ; les colonnes déclarées commeGEOMETRYCOLLECTIONsont mappées àString. Une colonne spatiale nullable autre quePOINTest également mappée àNullable(String), carPointest le seul type géométrique pouvant être imbriqué dansNullable. Chacune de ces chaînes est constituée d’un préfixe SRID de 4 octets suivi de la charge utile WKB, telle que renvoyée par MySQL. Tout ce qui précède s’applique lorsque le schéma est inféré à partir des types de colonnes d’une table MySQL ; lorsque la source est une requête (l’argumentquery(...)de la fonction de tablemysqlou du moteur de tableMySQL), MySQL signale chaque colonne de résultat spatial comme le type génériqueGEOMETRY, sans le sous-type spécifique. Ces colonnes, y comprisPOINT, sont donc mappées àString(Nullable(String)si elles sont nullables).