float und real (Transact-SQL)
Ungefähre Zahlendatentypen für numerische Gleitkommadaten. Gleitkommadaten sind Näherungswerte, deshalb können nicht alle Werte im Bereich des Datentyps exakt dargestellt werden. Das ISO-Synonym für real ist float(24).
Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Windows Azure SQL-Datenbank (Ursprüngliche Version bis aktuelle Version). |
Transact-SQL-Syntaxkonventionen
Syntax
float [ (n) ]
n gibt an, wie viele Bits zum Speichern der Mantisse der float-Zahl in der wissenschaftlichen Schreibweise verwendet werden, und legt dadurch die Genauigkeit und Speichergröße fest. Wenn n angegeben wird, muss es sich um einen Wert zwischen 1 und 53 handeln. Der Standardwert von n ist 53.n-Wert
Genauigkeit
Speichergröße
1-24
7 Stellen
4 Byte
25-53
15 Stellen
8 Byte
Hinweis
SQL Server behandelt n als einen von zwei möglichen Werten.Wenn 1<=n<=24, dann wird n als 24 verarbeitet.Wenn 25<=n<=53, dann wird n als 53 verarbeitet.
Der SQL Server float[(n)]-Datentyp entspricht dem ISO-Standard für alle Werte von n zwischen 1 und 53. Das Synonym für double precision ist float(53).
Hinweise
Datentyp |
Bereich |
Speicherung |
---|---|---|
float |
- 1,79E+308 bis -2,23E-308, 0 und 2,23E-308 bis 1,79E+308 |
Hängt vom Wert für n ab. |
real |
- 3,40E + 38 bis -1,18E - 38, 0 und 1,18E - 38 bis 3,40E + 38 |
4 Byte |
Konvertieren von float- und real-Daten
Werte des Typs float werden bei der Konvertierung in einen ganzzahligen Datentyp abgeschnitten.
Für das Konvertieren von float- oder real-Daten in Zeichendaten eignet sich die STR-Zeichenfolgenfunktion normalerweise besser als CAST( ). Der Grund hierfür ist, dass STR Ihnen bessere Steuerungsmöglichkeiten über die Formatierung bietet. Weitere Informationen finden Sie unter STR (Transact-SQL) und Integrierte Funktionen (Transact-SQL).
Die Konvertierung der float-Werte, die eine wissenschaftliche Schreibweise für decimal oder numeric verwenden, ist auf Werte mit einer Genauigkeit von 17 Stellen beschränkt. Alle Werte mit einer Genauigkeit von mehr als 17 Stellen werden auf Null gerundet.
Siehe auch
Verweis
CAST und CONVERT (Transact-SQL)
DECLARE @local\_variable (Transact-SQL)
SET @local\_variable (Transact-SQL)