SQL runde til 2 desimaler

SQL runde til 2 desimaler
Matematiske operasjoner lar oss rengjøre, filtrere, analysere og bygge meningsfulle datasett når vi jobber med databaser.

Denne korte artikkelen vil diskutere hvordan du kan avrunde en numerisk verdi til et spesifikt desimalsted.

SQL Round () -funksjon

Den runde () -funksjonen i SQL lar deg avrunde en numerisk verdi til et spesifikt presisjonspunkt. Selv om denne funksjonen er definert i standard SQL, blir denne funksjonen mye tatt i bruk av betydelige databasemotorer, for eksempel MySQL, PostgreSQL, SQL Server og BigQuery.

Funksjonssyntaks er vist nedenfor:

runde (jeg numerisk, d int);
ELLER
Runde (numeric_expr [, desimal_places])

Den runde funksjonen tar to argumenter. Den første er den numeriske verdien å avrunde. Det andre er antall desimaler å avrunde

Hvis verdien av D ikke er spesifisert under funksjonssamtalen, vil funksjonen automatisk runde den spesifiserte numeriske verdien til nærmeste heltall.

Funksjonen vil returnere følgende type basert på inngangstypen:

  1. INT64 (input) -> Float64 (utgang)
  2. Numerisk (input) -> Numerisk (utgang)
  3. Bignumeric (input) -> Bignumeric (utgang)
  4. Float64 (input) -> float64 (utgang).

Bortsett fra et heltall, vil alle de andre typene returnere inngangstypen som utgang.

Eksempel 1

Følgende eksempel viser hvordan du bruker rundfunksjonen i en enkel setting:

PLUKKE UT
Runde (3.14159, 2) som runde_value;

Det forrige spørringen vil avrunde den spesifiserte verdien til 2 desimaler. Den resulterende verdien er vist nedenfor:

runde_value
3.14

Eksempel 2

Hvis presisjonspunktet ikke er spesifisert, vil den runde funksjonen avrunde til nærmeste heltall.

Et eksempel er illustrert nedenfor:

PLUKKE UT
Runde (3.14159) som Round_Value;

Resultatet er gitt nedenfor:

runde_value
3.0

Eksempel 3

Hvis du spesifiserer en negativ verdi for presisjonspunktet, vil den runde funksjonen forsøke å runde verdiene på venstre side av desimalpunktet.

Et eksempel er vist nedenfor:

PLUKKE UT
Runde (3.14159, -2) som runde_value;

Det forrige eksemplet skal komme tilbake som følger:

runde_value
0.0

Eksempel 4

Hva om du spesifiserer en NAN -verdi? Tenk på eksemplet nedenfor:

PLUKKE UT
Runde ('nan', 0) som runde_value;

Funksjonen skal returnere en NAN som vist nedenfor:

runde_value
-------------
Nan
(1 rad)

Eksempel 5

For å bruke rundfunksjonen i en tabellkolonne, kan vi kjøre en spørring som vist nedenfor:

Velg betaling_id, runde (beløp, 1) som appx_amount fra betaling;

Den forrige spørringen skal avrunde verdiene til mengden kolonnen til ett desimalsted. Et eksempelutgang er gitt nedenfor:

Konklusjon

Denne artikkelen diskuterer hvordan du kan avrunde en numerisk verdi til et hvilket som helst antall desimaler ved hjelp av rundfunksjonen. Vi håper du fant denne artikkelen nyttig. Sjekk de andre Linux -hint -artiklene for flere tips og opplæringsprogrammer.