sql >> Database teknologi >  >> RDS >> Sqlserver

SQL Server ROUND() Funktion:Hvad er det til, og hvorfor skal du bekymre dig?

SQL er et programmeringssprog, der bruges til at oprette, læse, opdatere og slette databaser. Den har en af ​​de mest populære funktioner til afrunding af tal, hvilket kan være meget nyttigt i mange situationer, såsom økonomiske beregninger eller statistiske analyser. Denne artikel hjælper dig med at forstå, hvordan du bruger SQL Round-funktionen i dine databaseforespørgsler og -sætninger.

Hvad er SQL Server?

SQL Server er et databasestyringssystem, der kører på Windows og giver høj tilgængelighed, skalerbarhed, pålidelighed og sikkerhed.

Funktioner som ROUND giver brugerne mulighed for at udføre opgaver såsom at sikkerhedskopiere og gendanne databaser eller filer, overvåge ydeevne med forespørgsler, bruge indekser til at forbedre forespørgselshastigheden, administrere sikkerhedsindstillinger for brugere og roller, oprette logins til ekstern adgang til en forekomst af SQL Server over et netværk og så videre.

Selvom ROUND-funktionen måske ikke er så kompleks eller svær at implementere som andre derude, er den en fantastisk en at begynde at lære med!

Du kan gå videre til mere komplicerede SQL-serverfunktioner som STR, STUFF, SUBSTRING, UPPER, FLOOR, MAX og MIN senere.

SQL Server bruger også avancerede funktioner som ISNUMERIC, LAG, LEAD, NULLIF eller SESSION_USER.

SQL Server ROUND () Funktion:Hvad er det?

SQL Server ROUND ()-funktionen (begunstiget af udviklere, der bruger SQL Server Data Tools eller SSDT for kort på Analysis Service-, Reporting Service- og Integration Service-projekter) er en numerisk datatypekonvertering.

Denne funktion accepterer én parameter, som kan være et heltal eller et decimaltal og returnerer den tilsvarende heltalsværdi for det givne input. Forenklet sagt, funktionen SQL Server ROUND () runder tallet op til det nærmeste heltal.

Hvordan virker det?

SQL Server ROUND ()-funktionen er designet af Microsoft og kan bruges inden for forskellige områder, såsom matematik, teknik, økonomi osv. Den har ingen begrænsninger for inputværdier og runder altid op eller ned til nærmeste hele tal uden brøker. standard afrundingsretning er op hvilket betyder, at det vil runde tal større end 0 opad .

Faktisk er det ret simpelt at bruge det. Lad os tage et kig på nedenstående tabel:

Planeter Radius Solsæson
1 Mars 3396 687.58
2 Saturn 10759.22 10759.22
3 Neptun 24764 60190.91
4 Kviksølv 2439 115,18
5 Venus 6051 234,56

Med denne operator afrunder vi kolonnen SunSeason til én decimal:

1 VÆLG RUNDE (Solsæson, 1) FRA Planeter

Solsæson
687,5
10759,2
60190,9
115,8
243,5

Hvad med et mere interessant eksempel?

Forestil dig, at vi forsøger at beregne den gennemsnitlige størrelse af en pc-harddisk, så vi får resultatet 13,6666666666667. For at runde dette resultat op, kan vi bruge RUND-funktionen:

SELECT round(AVG(hd),2) AS avg_hd FROM pc;

Resultatet er 13,67.

Du kan skræddersy funktionen og ændre parametrene:

SELECT round(AVG(hd),-1) AS avg_hd FROM pc;

Resultatet er 10.

Her er et eksempel på brug af negative parametre med ROUND:

Du kan også bruge denne funktion til trunkering:

Her er et eksempel på brug af denne funktion med ansattes lønninger:

Hvilke andre funktioner kan kombineres med ROUND i SQL Server?

ROUND-funktionen er et alsidigt værktøj, der kan bruges i mange situationer. Du kan kombinere mange funktioner med ROUND i SQL Server. Her er de:LOFT, GULV, TRUNCATE, SQRT, MIN og MAX, MOD, POWER, SQUARE ROT og LOG.

Hvad er parametrene?

ROUND() tager to argumenter:det første er tallet, der skal afrundes, og det andet argument angiver, hvor mange decimaler det skal afrundes til.

Standard afrundingspræcision er 0, hvilket betyder, at tal afrundes til et heltal. Du kan justere parametrene, endda tilføje negative værdier.

Indtast ROUND(5.6) ind i dit forespørgselsvindue og tryk på Enter. Outputtet bliver 6 i stedet for 5, fordi du rundede op til det næste hele tal (dette ville have været 7, hvis du havde angivet "ROUND(5.7)").

Du kan angive det ønskede antal decimaler ved at tilføje .n (hvor n er ethvert positivt heltal).

Hvor kan jeg bruge det?

Denne smarte lille funktion fungerer i SQL Server (startende fra 2008), Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse.

Hvilke problemer løser det?

Denne funktion er nyttig til at afrunde til et bestemt antal decimaler og gøre dine data nemmere at arbejde med, men det er ikke alt, den kan.

Det bruges også til rapporteringsformål, fordi det vil afrunde tal i aggregerede beregninger som SUM(), AVG() eller COUNT().

Vi kan bruge det som et strengmanipulationsværktøj, der konverterer alle tegn til store bogstaver. Desuden kan den bruges sammen med funktioner som SUBSTRING (), TRIM (), LENGTH() og LEFT ().

Kan jeg bruge ROUND i MySQL?

MySQL er et relationelt databasestyringssystem (RDMS) ligesom SQL Server, men det er open source og gratis, mens SQL Server kommer med en licens fra Microsoft.

MySQL er en af ​​de mest brugte databaser i verden. Det har været førende inden for nøglefunktioner såsom transaktioner, låsemekanismer, gendannelsestilstande, sikkerhedsmetoder og skalerbarhed osv.

Der er en ækvivalent til Round-funktionen i MySQL kaldet Truncate. Scriptet er som følger:

 SELECT TRUNCATE(AVG(Salary),2)
   AS Avg_Salary
   FROM STAFF

Bemærk:Andre sprog har deres respektive funktioner. Du bør studere deres aspekter før implementeringen (især de mere avancerede funktioner, vi nævnte). Besøg os for at finde svarene på dine spørgsmål.

Hvilke andre sprog bruger Round?

Der er mange sprog bortset fra SQL Server, der bruger ROUND-funktionen, inklusive Pascal C++ Matlab Apex og så videre.

Oversigt

Medmindre du virkelig er i matematik er SQL Serverens ROUND-funktion mere kedelig end en gardin-sælger fra Idaho. Faktisk er det uhyggeligt kedeligt. Den gør kun 1 ting – den runder tal.

I SQL Server afrundes et givet tal til et heltal ved at afkorte cifre efter decimalkommaet, indtil der kun er ét ciffer tilbage, før der rundes op eller ned i henhold til de angivne regler.

Denne funktion er ikke understøttet på alle sprog, men den findes i mange af dem, såsom C# og VB.NET. Du kan også bruge ROUND til at konvertere flydende kommatal til heltal samt til at afrunde strenge.


  1. EM12c tillader nu DB12c til Repos

  2. NYHEDER:Ny Microsoft SQL Server Native Client 18 udgivet!

  3. PHP PDO udarbejdede erklæringer

  4. Hvordan kan jeg sætte en database under git (versionskontrol)?