メインコンテンツへスキップ
メインコンテンツへスキップ

sumKahan

Kahan compensated summation algorithm を使用して数値の合計を計算します。 sum 関数よりも遅くなります。 補償計算は Float 型に対してのみ機能します。

構文

sumKahan(x)

引数

  • x — 入力値。IntegerFloat、または Decimal のいずれかである必要があります。

戻り値

  • 数値の合計値。IntegerFloat、または Decimal 型のいずれかで、入力引数の型に応じて決まります。

クエリ:

SELECT sum(0.1), sumKahan(0.1) FROM numbers(10);

結果:

┌───────────sum(0.1)─┬─sumKahan(0.1)─┐
│ 0.9999999999999999 │             1 │
└────────────────────┴───────────────┘