sql >> Database >  >> RDS >> Database

Hoe de SQL SUM-functie te gebruiken

SQL is een krachtige en veelgebruikte programmeertaal voor het opslaan, ophalen en manipuleren van gegevens. Een van de meest gebruikte operators in SQL is SUM – een logische bewerking die de som van alle waarden in een kolom oplevert. Dit artikel behandelt de basisprincipes van het gebruik van deze operator in zoekopdrachten.

Waarom heb je SQL SUM nodig?

U kunt de SOM-operator gebruiken om de totale kosten van alle gekochte artikelen te berekenen. Of je kunt het toepassen om de som van alle cijfers op een examen of het totale aantal mensen dat een concert heeft bijgewoond te vinden. Dit zijn slechts enkele voorbeelden. In SQL kan de SUM-functie deel uitmaken van een query die meerdere resultaten oplevert, zoals in de SELECT-instructie die ordertotalen oplevert.

Het lijkt misschien saai, maar het hangt helemaal af van waar je het voor gebruikt. U hebt bijvoorbeeld de salarisgegevens van de mensen en moet weten hoeveel geld aan een bepaald item is uitgegeven. Of u moet iemand definiëren die in een bepaalde periode meer dan $ 50.000.000 heeft uitgegeven.

Dit artikel laat u de functie van de SOM-operator zien en hoe deze nuttig voor u kan zijn.

Wat is de SUM-operator in SQL precies?

De SUM-operator in SQL telt de waarden van alle opgegeven kolommen op. Het zal dus de waarden optellen en vervolgens een enkel getal uitvoeren voor elke kolom die u opgeeft.

Het optellen van alle waarden in één kolom (of tabel) is waarschijnlijk een van de meest voorkomende en bekende bewerkingen in SQL.

De systemen die de SUM-operator ondersteunen, zijn MySQL, PostgreSQL, SQL Server en Oracle. Dit zijn allemaal de topsystemen.

Hoe de SQL SUM-functie gebruiken?

Laten we beginnen met een voorbeeld van het gebruik van SQL om numerieke waarden op te tellen. De SOM-functie in SQL groepeert al uw getallen op type en telt ze vervolgens, zodat u één totaal krijgt voor elk type.

Om het goed te doen, moet u uw SOM's tussen haakjes () plaatsen wanneer u de rijen met gegevens groepeert.

De syntaxis is:

Sum([some columns])

Het neemt alle gegevens tussen die haakjes en telt het op tot één getal. Dat noemen we ze bij elkaar optellen tot één getal.

U wilt bijvoorbeeld het totaal aantal mensen berekenen dat bij uw bedrijf werkt. Dat zal als volgt zijn:

SELECT COUNT(*) FROM employees; 

De functie heeft drie argumenten:

  • de uitdrukking
  • de kolomnaam
  • de lijst met constanten of variabelen gescheiden door komma's.

Als we de som van de getallen 2 en 3 willen vinden met SQL, dan typen we de query:

SELECT SUM(2+3) AS 'Sum' FROM Numbers

Wat is het verschil tussen de SQL SUM-functie en SQL AVG?

Het verschil tussen deze twee SQL-aggregatiefuncties is dat de SQL AVG-functie alleen een gemiddelde berekent van alle waarden in een kolom. De functie SOM retourneert de som van alle waarden in een kolom.

Wat dacht je van een voorbeeld van SUM in SQL?

Hier is een afbeelding:

Oracle's SUM OVER - een specifieke use-case

U kunt wijzigingen van SUM in talen en instanties zoals deze hieronder vinden. Oracle's SUM OVER functie berekent de som voor elke waarde in een groep waarden. Het doet dit door een uitdrukking te nemen, deze te evalueren op alle leden van de groep en vervolgens het resultaat terug te geven alsof ze bij elkaar zijn opgeteld.

Het trefwoord OVER geeft aan welke rijen u in berekeningen moet opnemen. Het is ook mogelijk om meerdere voorwaarden met verschillende nestingsniveaus op te geven met haakjes.

Is er nog meer te SOM in SQL?

SUM is veel flexibeler dan u het totaal van iets te geven. We kunnen het bijvoorbeeld combineren met WHERE en bereken het totaal aan salarissen van werknemers met een salaris van meer dan 100 000:

SELECT SUM(salary) AS "Total Salary"
FROM employees
WHERE salary > 100000;

Of stel dat u wilt weten hoeveel medewerkers een bepaalde vaardigheid hebben. Je zou deze code kunnen gebruiken:

SELECT COUNT(*) 
FROM EMPLOYEE 
WHERE SKILL = 'SQL';

Een ander geval is het gebruik van SQL SUM met GROUP BY :

SELECT department, SUM(sales) AS "Total sales"
FROM order_details
GROUP BY department;

Conclusie

De SOM-operator in SQL is een aggregatiefunctie die een wiskundige sommatie van waarden uitvoert. Het is een handige kleine functie, vooral bij gebruik met andere operators, en het wordt ondersteund door tal van populaire systemen.

De reikwijdte van deze operator is enorm. Je zou het gebruiken wanneer je de definitieve som van bepaalde waarden nodig hebt. Als u bijvoorbeeld wilt weten hoeveel studenten van een bepaalde universiteit meer dan 90% scoren op hun examens om universiteiten te rangschikken, kunt u de SOM-functie gebruiken.


  1. Vind records waar join niet bestaat

  2. Hoe rijen in kolommen in Oracle-tabel worden geconverteerd

  3. Controleer of er een rij bestaat, anders invoegen

  4. Meerdere MySQL-instanties die op dezelfde machine worden uitgevoerd controleren - ClusterControl Tips &Tricks