Note
If you need accurate calculations, in particular if you work with financial or business data requiring a high precision, you should consider using Decimal instead.
Floating Point Numbers might lead to inaccurate results as illustrated below:
The equivalent types in ClickHouse and in C are given below:
Float32
— float
.Float64
— double
.Float types in ClickHouse have the following aliases:
Float32
— FLOAT
, REAL
, SINGLE
.Float64
— DOUBLE
, DOUBLE PRECISION
.When creating tables, numeric parameters for floating point numbers can be set (e.g. FLOAT(12)
, FLOAT(15, 22)
, DOUBLE(12)
, DOUBLE(4, 18)
), but ClickHouse ignores them.
Inf
) and "not-a-number" (NaN
). This should be taken into account when processing the results of calculations.In contrast to standard SQL, ClickHouse supports the following categories of floating-point numbers:
Inf
– Infinity.-Inf
— Negative infinity.NaN
— Not a number.See the rules for NaN
sorting in the section ORDER BY clause.
BFloat16
is a 16-bit floating point data type with 8-bit exponent, sign, and 7-bit mantissa. It is useful for machine learning and AI applications.
ClickHouse supports conversions between Float32
and BFloat16
which can be done using the toFloat32()
or toBFloat16
functions.
Note
Most other operations are not supported.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4