Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
              Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Analytics-eindpunt in Microsoft Fabric
Magazijn in Microsoft Fabric
SQL-database in Microsoft Fabric Preview
Gegevenstypen van geschatte getallen voor gebruik met numerieke drijvende kommagegevens. Gegevens over drijvende komma zijn bij benadering; Daarom kunnen niet alle waarden in het gegevenstypebereik exact worden weergegeven. Het ISO-synoniem voor echte is float(24).
              
              
              Transact-SQL syntaxis-conventies
Syntax
float [ (n) ] Waarbij n het aantal bits is dat wordt gebruikt om de mantissa van het floatnummer op te slaan in wetenschappelijke notatie en bepaalt daarom de precisie en opslaggrootte. Als n is opgegeven, moet dit een waarde tussen 1 en 53 zijn. De standaardwaarde van n is 53.
| n value | Precision | Storage size | 
|---|---|---|
| 1-24 | 7 digits | 4 bytes | 
| 25-53 | 15 digits | 8 bytes | 
Note
SQL Server behandelt n als een van de twee mogelijke waarden. Als 1<=n<=24, wordt n behandeld als 24. Als 25<=n<=53, wordt n behandeld als 53.
Het gegevenstype SQL Server float[(n)] voldoet aan de ISO-standaard voor alle waarden van n van 1 tot en met 53. Het synoniem voor dubbele precisie is float(53).
Remarks
| Data type | Range | Storage | 
|---|---|---|
| float | - 1,79E+308 tot -2.23E-308, 0 en 2.23E-308 tot 1,79E+308 | Afhankelijk van de waarde van n | 
| real | - 3.40E + 38 tot -1.18E - 38, 0 en 1.18E - 38 tot 3,40E + 38 | 4 Bytes | 
De float- en echte gegevenstypen worden geschatte gegevenstypen genoemd. Het gedrag van float en real volgt de IEEE 754-specificatie over geschatte numerieke gegevenstypen. Zie IEEE Floating-Point-weergave voor meer informatie over hoe de MSVC-compiler (Microsoft Visual C) gebruikmaakt van de IEEE 754-standaard
Bij benadering van numerieke gegevenstypen worden niet de exacte waarden opgeslagen die zijn opgegeven voor veel getallen; ze slaan een nauwe benadering van de waarde op. Voor sommige toepassingen is het kleine verschil tussen de opgegeven waarde en de opgeslagen benadering niet relevant. Voor anderen is het verschil echter belangrijk. Vanwege de geschatte aard van de float- en echte gegevenstypen, gebruikt u deze gegevenstypen niet wanneer exact numeriek gedrag is vereist. Voorbeelden die nauwkeurige numerieke waarden vereisen, zijn financiële of zakelijke gegevens, bewerkingen met afronding of gelijkheidscontroles. In dergelijke gevallen gebruikt u de gegevenstypen integer, decimaal, numeriek, geld of smallmoney.
Vermijd het gebruik van float- of echte kolommen in where-componentzoekvoorwaarden, met name de = en <> operators. U kunt het beste float- en echte kolommen beperken tot > of < vergelijkingen.
Float- en echte gegevens converteren
Waarden van float worden afgekapt wanneer ze worden geconverteerd naar een geheel getaltype.
Wanneer u wilt converteren van float - of echt naar tekengegevens, is het gebruik van de functie STR-tekenreeks doorgaans nuttiger dan CAST( ). De reden hiervoor is dat STR() meer controle over opmaak mogelijk maakt. Zie STR (Transact-SQL) en Functions (Transact-SQL) voor meer informatie.
Vóór SQL Server 2016 (13.x) is de conversie van floatwaarden tot decimale of numerieke waarden beperkt tot alleen waarden van precisie 17 cijfers. Elke floatwaarde kleiner dan 5E-18 (wanneer deze is ingesteld met behulp van de wetenschappelijke notatie van 5E-18 of de decimale notatie van 0,000000000000005) wordt naar beneden afgerond op 0. Dit is geen beperking meer vanaf SQL Server 2016 (13.x).