Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

sumKahan

sumKahan

Introduit dans : v1.1.0

Calcule la somme de nombres à l’aide de l’algorithme de sommation compensée de Kahan. Plus lente que la fonction sum. La compensation ne fonctionne que pour les types Float.

Syntaxe

sumKahan(x)

Arguments

Valeur renvoyée

Renvoie la somme des nombres. (U)Int* ou Float* ou Decimal

Exemples

Démonstration de l’amélioration de la précision avec la sommation de Kahan

SELECT sum(0.1), sumKahan(0.1) FROM numbers(10);
┌───────────sum(0.1)─┬─sumKahan(0.1)─┐
│ 0.9999999999999999 │             1 │
└────────────────────┴───────────────┘
Navigation