Tous les produits
Search
Centre de documentation

Realtime Compute for Apache Flink:CONV

Dernière mise à jour :Aug 09, 2026

Convertit un nombre d'une base à une autre. La fonction CONV accepte les représentations entières et textuelles du nombre en entrée, et renvoie toujours un résultat de type VARCHAR.

CONV est prise en charge uniquement dans Realtime Compute for Apache Flink utilisant Ververica Runtime (VVR) 3.0.0 ou une version ultérieure.

Syntaxe

VARCHAR CONV(BIGINT number, INT FROM_BASE, INT TO_BASE)
VARCHAR CONV(VARCHAR number, INT FROM_BASE, INT TO_BASE)

Paramètres

Paramètre Type de données Description
number BIGINT ou VARCHAR Nombre à convertir.
FROM_BASE INT Base du nombre d'entrée. Valeurs valides : [2, 36].
TO_BASE INT Base de destination. Valeurs positives valides : [2, 36]. Valeurs négatives valides : [-36, -2].

Valeur renvoyée

Une chaîne VARCHAR représentant le nombre converti.

  • Pour les bases supérieures à 10, les lettres représentent les chiffres : A = 10, B = 11, ..., Z = 35.

  • Renvoie NULL si number vaut NULL ou contient des caractères non valides pour la FROM_BASE spécifiée.

  • La fonction s'exécute avec une précision de 64 bits.

Exemples

Conversion de base

SELECT conv('100', 2, 10);
-- 4

SELECT conv('A', 16, 10);
-- 10

Entrées NULL et invalides

SELECT conv(NULL, 10, 16);
-- NULL

SELECT conv('test', 10, 2);
-- NULL  (invalid characters for base 10)

Exemple basé sur une table

L'exemple suivant utilise la table T1 :

id (INT) x (BIGINT) y (VARCHAR)
1 12 '12'
2 10 '10'
3 0 'test'
4 NULL NULL

Instruction :

SELECT id, conv(x, 10, 16) AS var1, conv(y, 10, 2) AS var2
FROM T1;

Résultats :

id var1 var2
1 C 1100
2 A 1010
3 0 NULL
4 NULL NULL
  • Ligne 3 : x=0 se convertit en 0 quelle que soit la base. y='test' n'est pas une entrée valide en base 10, d'où le retour de NULL.

  • Ligne 4 : une entrée NULL renvoie NULL.