SQL heeft drie functies die waarden kunnen afronden op een bepaald aantal decimalen . U kunt deze functies gebruiken om een verscheidenheid van de database - gerelateerde problemen , variërend van het wegwerken van de fracties van centen op financiële transacties te regulariseren data input uit diverse wetenschappelijke instrumenten op te lossen. Als u nieuw bent bij SQL bent , kan haar afrondingsfuncties lijkt een beetje vreemd , en kan een paar aanpassingsproblemen veroorzaken . Conventionele Afronding SQL 's " ROUND ( ) " functie neemt een bestaande waarde en ronden deze naar het opgegeven aantal decimalen . De indeling is als volgt : RONDE ( [ waarde ] , [ n ] , [ 1 ] ) ) op Hier , " [ waarde ] " is een decimale waarde , en " [ n ] " is het aantal cijfers van de waarde moet worden afgerond op . Conventionele afronding rondes waarden van 0,5 of meer naar boven , en de waarden van 0,49 en lager . Door de waarde op " 0 " rondes tot gehele waarden , de waarde op " -1 " ronden op het dichtstbijzijnde veelvoud van 10 . De " ROUND ( ) " derde parameter functie , " [ 1 ] , " kapt het nummer op het opgegeven aantal decimalen , indien ingesteld op een andere waarde dan nul . Een belangrijke bron van onverwachte afronding problemen komen wanneer , als gevolg van een typefout , wordt de derde parameter in te stellen en het aantal kapt plaats rondes . Vloer en plafond SQL maakt gebruik van de functie " FLOOR ( ) " te dwingen waarden naar beneden afronden op de dichtstbijzijnde waarde , en de " PLAFOND ( ) " functie te ronden naar de dichtstbijzijnde waarde . Beide functies retourneren gehele waarden , zelfs met behulp van een float -gegevenstype met een aantal decimalen gespecificeerd retourneert een waarde met nullen achter de komma Aanbevolen Data Types < . br > de meest waarschijnlijke reden voor afrondingsfouten in SQL komt voort uit het gebruik van een onverwachte gegevenstype voor de numerieke uitdrukking in de " ROUND ( ) " functie , of van het gebruik van " FLOOR ( ) " of " MAXIMUM ( ) " en verwacht een decimale data type, in plaats van een geheel getal te krijgen. Als de SQL -functie geeft u onverwachte afronding resultaten , zorg ervoor dat de " CAST ( ) " functie dat is vermelding van het nummer heeft het gegevenstype ingesteld op " integer ", " decimaal ", "geld " of " smallmoney . " de " decimale " data type is beperkt tot slechts 38 cijfers in totaal , dat is een beperking dat weinig mensen buiten de wetenschappelijke gemeenschap tegenkomen . Other data Types < br > Twee soorten gegevens terug numerieke waarden dat de problemen met de " ROUND ( ) " functie kan veroorzaken . Dit zijn " echte " en " float " types nummer in SQL , gebruikt om zeer kleine fracties die omhoog word afgerond door de meeste varianten van SQL op het laatste decimaal van het type data op te nemen aangegeven ; enkele SQL -implementaties ronde tot nul , beneden afronden of rond conventioneel . Wanneer u gegevens die worden ingevoerd in een SQL-database die kan worden met behulp van de "echte " of " float " typen data , gebruik de " CAST ( ) " of " CONVERT ( ) " -functies om te zetten in het hebben " decimale " datatype .
|