sql >> Database >  >> RDS >> Sqlserver

SQL Server ROUND()-functie:waar is het voor en waarom zou het u iets kunnen schelen?

SQL is een programmeertaal die wordt gebruikt voor het maken, lezen, bijwerken en verwijderen van databases. Het heeft een van de meest populaire functies voor het afronden van getallen, wat erg handig kan zijn in veel situaties, zoals financiële berekeningen of statistische analyse. Dit artikel helpt u te begrijpen hoe u de functie SQL Round in uw databasequery's en -instructies kunt gebruiken.

Wat is SQL Server?

SQL Server is een databasebeheersysteem dat op Windows draait en een hoge beschikbaarheid, schaalbaarheid, betrouwbaarheid en beveiliging biedt.

Functies zoals ROUND stellen gebruikers in staat om taken uit te voeren zoals het maken van back-ups en het herstellen van databases of bestanden, het bewaken van de prestaties met query's, het gebruik van indexen om de querysnelheid te verbeteren, het beheren van beveiligingsinstellingen voor gebruikers en rollen, het creëren van aanmeldingen voor externe toegang tot een exemplaar van SQL Server via een netwerk, enzovoort.

Hoewel de ROUND-functie misschien niet zo complex of moeilijk te implementeren is als andere, is het een geweldige functie om mee te beginnen!

U kunt later doorgaan naar meer gecompliceerde SQL-serverfuncties zoals STR, STUFF, SUBSTRING, UPPER, FLOOR, MAX en MIN.

SQL Server gebruikt ook geavanceerde functies zoals ISNUMERIC, LAG, LEAD, NULLIF of SESSION_USER.

SQL Server ROUND () Functie:wat is het?

De functie SQL Server ROUND () (bevoordeeld door ontwikkelaars die SQL Server Data Tools of kortweg SSDT gebruiken voor Analysis Service-, Reporting Service- en Integration Service-projecten) is een numerieke conversie van gegevenstypes.

Deze functie accepteert één parameter die een geheel getal of een decimaal getal kan zijn en retourneert de bijbehorende gehele waarde voor de gegeven invoer. Simpel gezegd, de SQL Server ROUND () functie rondt het getal naar boven af ​​op het dichtstbijzijnde gehele getal.

Hoe werkt het?

De SQL Server ROUND ()-functie is ontworpen door Microsoft en kan worden gebruikt in verschillende gebieden, zoals wiskunde, engineering, financiën, enz. Het heeft geen limieten voor invoerwaarden en rondt altijd naar boven of naar beneden af ​​op het dichtstbijzijnde gehele getal zonder breuken. De standaard afrondingsrichting is up wat betekent dat het cijfers groter dan 0 naar boven zal afronden .

In feite is het gebruik ervan vrij eenvoudig. Laten we de onderstaande tabel eens bekijken:

Planeten Straal Zonseizoen
1 Mars 3396 687.58
2 Saturnus 10759.22 10759.22
3 Neptunus 24764 60190.91
4 Kwik 2439 115.18
5 Venus 6051 234.56

Met deze operator ronden we de kolom SunSeason af op één decimaal:

1 SELECTEER RONDE (zonseizoen, 1) UIT planeten

Zonseizoen
687,5
10759.2
60190,9
115,8
243,5

Wat dacht je van een interessanter voorbeeld?

Stel je voor dat we proberen de gemiddelde grootte van een pc-harde schijf te berekenen en het resultaat 13.6666666666667 te krijgen. Om dit resultaat naar boven af ​​te ronden, kunnen we de ROUND-functie gebruiken:

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

Het resultaat is 13,67.

U kunt de functie aanpassen en de parameters wijzigen:

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

Het resultaat is 10.

Hier is een voorbeeld van het gebruik van negatieve parameters met ROUND:

U kunt deze functie ook gebruiken voor inkorten:

Hier is een voorbeeld van het gebruik van deze functie met de salarissen van werknemers:

Welke andere functies kunnen worden gecombineerd met ROUND in SQL Server?

De ROUND-functie is een veelzijdig hulpmiddel dat in veel situaties kan worden gebruikt. U kunt veel functies combineren met ROUND in SQL Server. Hier zijn ze:PLAFOND, VLOER, TRUNCATE, SQRT, MIN en MAX, MOD, POWER, SQUARE ROOT en LOG.

Wat zijn de parameters?

ROUND() heeft twee argumenten:het eerste is het getal dat moet worden afgerond en het tweede argument geeft aan op hoeveel decimalen het moet worden afgerond.

De standaardafrondingsprecisie is 0, wat betekent dat getallen worden afgerond op een geheel getal. U kunt de parameters aanpassen, zelfs negatieve waarden toevoegen.

Typ ROND(5.6) in uw queryvenster en druk op Enter. De output zal 6 zijn in plaats van 5 omdat je naar boven hebt afgerond op het volgende gehele getal (dit zou 7 zijn geweest als je “ROUND(5.7)”) had opgegeven.

U kunt het gewenste aantal decimalen specificeren door .n . toe te voegen (waar n is een willekeurig positief geheel getal).

Waar kan ik het gebruiken?

Deze handige kleine functie werkt in SQL Server (vanaf 2008), Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse.

Welke problemen lost het op?

Deze functie is handig om op een bepaald aantal decimalen af ​​te ronden en uw gegevens gemakkelijker te maken om mee te werken, maar dat is niet alles.

Het wordt ook gebruikt voor rapportagedoeleinden omdat het getallen zal afronden in geaggregeerde berekeningen zoals SUM(), AVG() of COUNT().

We kunnen het gebruiken als een tekenreeksmanipulatietool die alle tekens omzet in hoofdletters. Bovendien kan het worden gebruikt in combinatie met functies zoals SUBSTRING (), TRIM (), LENGTH() en LEFT ().

Kan ik ROUND gebruiken in MySQL?

MySQL is een relationeel databasebeheersysteem (RDMS) net als SQL Server, maar het is open-source en gratis, terwijl SQL Server wordt geleverd met een licentie van Microsoft.

MySQL is een van de meest gebruikte databases ter wereld. Het is een leider geweest op het gebied van belangrijke functies zoals transacties, vergrendelingsmechanismen, herstelmodi, beveiligingsmethoden en schaalbaarheid, enz.

Er is een equivalent van de Round-functie in MySQL genaamd Truncate. Het script is als volgt:

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

Opmerking:andere talen hebben hun respectieve functies. Je moet hun aspecten bestuderen vóór de implementatie (vooral de meer geavanceerde functies die we noemden). Bezoek ons ​​om de antwoorden op uw vragen te vinden.

Welke andere talen gebruikt Round?

Naast SQL Server zijn er veel talen die de ROUND-functie gebruiken, waaronder Pascal C++ Matlab Apex, enzovoort.

Samenvatting

Tenzij je echt bent in Math is de ROUND-functie van de SQL Server vervelender dan een gordijnenverkoper uit Idaho. Sterker nog, het is verschrikkelijk saai. Het doet maar 1 ding - het rondt nummers.

In SQL Server rondt het een bepaald getal af op een geheel getal door cijfers achter de komma af te kappen totdat er nog maar één cijfer over is voordat naar boven of beneden wordt afgerond volgens de opgegeven regels.

Deze functie wordt niet in alle talen ondersteund, maar bestaat wel in veel talen, zoals C# en VB.NET. U kunt ROUND ook gebruiken om getallen met drijvende komma om te zetten in gehele getallen en om tekenreeksen af ​​te ronden.


  1. De meest efficiënte T-SQL-manier om een ​​varchar aan de linkerkant tot een bepaalde lengte op te vullen?

  2. Een kolom toevoegen aan een bestaande tabel in SQLite

  3. WinDeath op notifyDataSetChanged()

  4. Migreren van AnswerHub naar WordPress:A Tale of 10 Technologies