mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-10-18 22:40:50 +00:00
d91c97d15d
* Replace underscores with hyphens * remove temporary code * fix style check * fix collapse
2.3 KiB
2.3 KiB
machine_translated | machine_translated_rev | toc_priority | toc_title |
---|---|---|---|
true | f865c9653f |
41 | Float32, Float64 |
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.md).