Float32, Float64 

Les nombres à virgule flottante.

Les Types sont équivalents aux types de C:

  • Float32 - float
  • Float64 - double

Nous vous recommandons de stocker les données sous forme entière chaque fois que possible. Par exemple, convertissez des nombres de précision fixes en valeurs entières, telles que des montants monétaires ou des temps de chargement de page en millisecondes.

Utilisation de nombres à virgule flottante 

  • Calculs avec des nombres à virgule flottante peut produire une erreur d'arrondi.
SELECT 1 - 0.9
┌───────minus(1, 0.9)─┐
│ 0.09999999999999998 │
└─────────────────────┘
  • Le résultat du calcul dépend de la méthode de calcul (le type de processeur et de l'architecture du système informatique).
  • Les calculs à virgule flottante peuvent entraîner des nombres tels que l'infini (Inf) et “not-a-number” (NaN). Cela doit être pris en compte lors du traitement des résultats de calculs.
  • Lors de l'analyse de nombres à virgule flottante à partir de texte, le résultat peut ne pas être le nombre représentable par machine le plus proche.

NaN et Inf 

Contrairement à SQL standard, ClickHouse prend en charge les catégories suivantes de nombres à virgule flottante:

  • Inf – Infinity.
SELECT 0.5 / 0
┌─divide(0.5, 0)─┐
│            inf │
└────────────────┘
  • -Inf – Negative infinity.
SELECT -0.5 / 0
┌─divide(-0.5, 0)─┐
│            -inf │
└─────────────────┘
  • NaN – Not a number.
SELECT 0 / 0
┌─divide(0, 0)─┐
│          nan │
└──────────────┘
See the rules for `NaN` sorting in the section [ORDER BY clause](../sql_reference/statements/select/order-by.md).

Article Original

Rating: 1.8 - 12 votes

Was this content helpful?
★★☆☆☆