Tous les produits
Search
Centre de documentation

ApsaraDB for ClickHouse:Data types

Dernière mise à jour :Aug 11, 2026

ApsaraDB for ClickHouse prend en charge les types de données répertoriés dans cette rubrique. Pour consulter le système de types complet, reportez-vous à la section Types de données de la documentation open source de ClickHouse.

Types de données pris en charge

Entiers

Entiers signés. Privilégiez le type le plus petit couvrant votre plage de valeurs afin de minimiser l'espace de stockage.

Mot-clé Plage
Int8 –128 à 127
Int16 –32 768 à 32 767
Int32 –2 147 483 648 à 2 147 483 647
Int64 –9 223 372 036 854 775 808 à 9 223 372 036 854 775 807

Pour les entiers non signés (UInt8, UInt16, UInt32, UInt64), consultez la section Types d'entiers de la documentation ClickHouse.

Virgule flottante

Mot-clé Description
Float32 Virgule flottante simple précision. Équivalent au type FLOAT en C++. Occupe 4 octets ; binaire 32 bits.
Float64 Virgule flottante double précision. Équivalent au type DOUBLE en C++. Occupe 8 octets ; binaire 64 bits.
Pour les données financières ou commerciales nécessitant des calculs exacts, privilégiez le type Decimal plutôt que Float32 ou Float64 . L'arithmétique en virgule flottante peut introduire des erreurs d'arrondi.

Décimal

Nombres à virgule fixe signés qui conservent leur précision lors des opérations d'addition, de soustraction et de multiplication.

Formats pris en charge : Decimal(P, S), Decimal32(S), Decimal64(S), Decimal128(S).

Chaîne

Mot-clé Description
String Chaîne de longueur variable de toute taille, y compris les octets nuls. Équivalent aux types VARCHAR, BLOB et CLOB dans d'autres systèmes de base de données.
FixedString(N) Chaîne de longueur fixe composée exactement de N octets. Plus efficace que le type String lorsque toutes les valeurs possèdent la même longueur en octets.

Cas d'utilisation optimaux pour le type FixedString :

  • Représentation binaire des adresses IPv6 : FixedString(16)

  • Codes de langue tels que ru_RU et en_US

  • Codes de devise tels que USD et RUB

  • Valeurs de hachage MD5 : FixedString(16)

  • Valeurs de hachage SHA-256 : FixedString(32)

Date et heure

Mot-clé Description
Date Stocke une date sous forme du nombre de jours écoulés depuis le 01/01/1970. Occupe 2 octets. Non signé. Stocké sans fuseau horaire.
DateTime Stocke une date et une heure sous forme du nombre de secondes écoulées depuis le 01/01/1970 00:00:00. Occupe 4 octets. Non signé. La plage de valeurs du type DateTime est identique à celle du type Date. La valeur minimale est 1970-01-01 00:00:00. Précision à la seconde près ; les secondes intercalaires ne sont pas prises en charge. Le fuseau horaire correspond au fuseau horaire système du client ou du serveur.
DateTime64 Stocke à la fois la date et l'heure d'un instant précis.
Le type Date est plus rapide que le type DateTime dans la plupart des cas et nécessite moitié moins d'espace de stockage (2 octets contre 4 octets). La différence de taille devient plus significative après compression.

Booléen

ClickHouse ne dispose pas de type booléen natif. Utilisez le type UInt8 pour les valeurs booléennes : 0 pour faux, 1 pour vrai.

Tableau

Array(T) — collection d'éléments du même type T. Le type d'élément peut être n'importe quel type ClickHouse, y compris le type Array.

Évitez les tableaux multidimensionnels. ClickHouse ne les prend en charge que partiellement : il est impossible de stocker des tableaux multidimensionnels dans les tables MergeTree.

N-uplet (Tuple)

Tuple(T1, T2, ...) — collection d'éléments de types différents.

Les n-uplets ne peuvent pas être stockés dans des tables, sauf dans les tables en mémoire. Utilisez-les pour regrouper des colonnes temporaires dans des requêtes avec des expressions IN ou des fonctions lambda.

Domaine

Le type Domain stocke les adresses IP au format binaire avec une saisie et une sortie lisibles par l'homme :

  • Adresses IPv4 : compatibles au niveau binaire avec le type UInt32.

  • Adresses IPv6 : compatibles au niveau binaire avec le type FixedString(16).

Énumération

Mot-clé Plage Notes
Enum8 –128 à 127
Enum16 –32 768 à 32 767 Les valeurs peuvent être vides

Nullable

Nullable(T) — encapsule n'importe quel type de base T pour autoriser les valeurs NULL. La valeur par défaut est NULL sauf si la configuration du serveur ClickHouse spécifie le contraire.

Contraintes :

  • Les colonnes Nullable ne peuvent pas être incluses dans les index de table.

Nested

Nested — structure de données imbriquée, semblable à une table intégrée dans une cellule. Définissez-la avec des noms de champs et des types, en utilisant la même syntaxe que pour l'instruction CREATE TABLE. Chaque ligne de la table externe peut correspondre à un nombre quelconque de lignes dans la structure imbriquée.