Nicht-ganzzahlig
Synopse
Mit den nicht-ganzzahligen Datentypen (Fließkomma und Festkomma) können Sie nicht-ganzzahlige Zahlen angeben. Verschiedene Fließkomma-Datentypen repräsentieren unterschiedliche Präzisionszahlen.
| Datentyp | Beschreibung | Dezimalgenauigkeit | 
|---|---|---|
| FLOAT | Inexakte 32-Bit-Gleitkommazahl | 7 | 
| DOUBLE | Inexakt 64-Bit-Gleitkommazahl | 15 | 
| DECIMAL | Beliebige Präzisionszahl | keine Ober-Grenze | 
Syntax
Wo
- Spalten vom Typ FLOATDOUBLEDOUBLE PRECISION, oderDECIMALkönnen Teil desPRIMARY KEYsein.
-  DOUBLEundDOUBLE PRECISIONsind Aliasnamen.
-  non_integer_floating_point_literalwird für Werte der TypenFLOATDOUBLEundDOUBLE PRECISIONverwendet.
-  non_integer_fixed_point_literalwird für Werte vom TypDECIMALverwendet.
Semantik
- Werte verschiedener Gleitkomma- und Festkomma-Datentypen sind vergleichbar und ineinander konvertierbar.
- Die Konvertierung von Fließkomma-Typen in DECIMALführt bei den SonderwertenNaNInfinityund-Infinityzu einem Fehler.
 
- Die Konvertierung von Fließkomma-Typen in 
- Werte von nicht-ganzzahligen numerischen Datentypen sind weder vergleichbar noch konvertierbar in Integer, obwohl Integer in sie konvertierbar sind.
- Die Reihenfolge für spezielle Fließkommawerte ist wie folgt definiert (in aufsteigender Reihenfolge): -Infinity, alle negativen Werte in Reihenfolge, alle positiven Werte in Reihenfolge,InfinityundNaN.
Beispiele
ycqlsh:example> CREATE TABLE sensor_data (sensor_id INT PRIMARY KEY, float_val FLOAT, dbl_val DOUBLE, dec_val DECIMAL);ycqlsh:example> INSERT INTO sensor_data(sensor_id, float_val, dbl_val, dec_val) VALUES (1, 321.0456789, 321.0456789, 321.0456789);Integer-Literale können auch verwendet werden (mit Upsert-Semantik zum Aktualisieren einer nichtexistierende Zeile).
ycqlsh:example> UPDATE sensor_data SET float_val = 1, dbl_val = 1, dec_val = 1 WHERE sensor_id = 2;ycqlsh:example> SELECT * FROM sensor_data; sensor_id | float_val | dbl_val | dec_val-----------+-----------+-----------+------------- 2 | 1 | 1 | 1 1 | 321.04568 | 321.04568 | 321.0456789Siehe auch
- Datentypen