SQL je výkonný a široce používaný programovací jazyk pro ukládání, vyhledávání a manipulaci s daty. Jedním z nejčastěji používaných operátorů v SQL je SUM – logická operace, která vytváří součet všech hodnot ve sloupci. Tento článek pokryje základy použití tohoto operátora v dotazech.
Proč potřebujete SQL SUM?
Pomocí operátoru SUM můžete vypočítat celkovou cenu všech zakoupených položek. Nebo jej můžete použít k nalezení součtu všech známek na zkoušce nebo celkového počtu lidí, kteří se zúčastnili koncertu. To jsou jen některé příklady. V SQL může být funkce SUM součástí dotazu, který poskytne více výsledků, jako v příkazu SELECT, který vytváří součty objednávek.
Může se to zdát nudné, ale zcela záleží na tom, k čemu to používáte. Máte například podrobnosti o platu lidí a potřebujete vědět, kolik peněz bylo utraceno za konkrétní položku. Nebo potřebujete definovat někoho, kdo během určitého období utratil více než 50 000 000 $.
Tento článek vám ukáže funkci operátora SUM a jak pro vás může být užitečný.
Co je přesně operátor SUM v SQL?
Operátor SUM v SQL sečte hodnoty všech zadaných sloupců. Sečte tedy hodnoty a poté vydá jedno číslo pro každý sloupec, který zadáte.
Sečtení všech hodnot do jednoho sloupce (nebo tabulky) je pravděpodobně jednou z nejběžnějších a nejznámějších operací v SQL.
Systémy, které podporují operátor SUM, jsou MySQL, PostgreSQL, SQL Server a Oracle. To vše jsou nejlepší systémy.
Jak používat funkci SQL SUM?
Začněme příkladem, jak použít SQL k sečtení číselných hodnot. Funkce SUM v SQL seskupí všechna vaše čísla podle typu a poté je spočítá, takže pro každý typ získáte jeden součet.
Abyste to udělali správně, musíte při seskupování řádků dat uvést své SUMY do závorek ().
Syntaxe je:
Sum([some columns])
Vezme všechna data v těchto závorkách a spočítá je do jednoho čísla. To je to, co nazýváme jejich sečtením do jednoho čísla.
Chcete například vypočítat celkový počet lidí, kteří pracují ve vaší společnosti. Bude to následující:
SELECT COUNT(*) FROM employees;
Funkce má tři argumenty:
- výraz
- název sloupce
- seznam konstant nebo proměnných oddělených čárkami.
Pokud bychom chtěli najít součet čísel 2 a 3 pomocí SQL, zadali bychom dotaz:
SELECT SUM(2+3) AS 'Sum' FROM Numbers
Jaký je rozdíl mezi funkcí SQL SUM a SQL AVG?
Rozdíl mezi těmito dvěma agregačními funkcemi SQL je v tom, že funkce SQL AVG vypočítává pouze průměr všech hodnot ve sloupci. Funkce SUM vrací součet všech hodnot ve sloupci.
Co takhle příklad SUM v SQL?
Zde je vizuál:
Oracle's SUM OVER – konkrétní případ použití
Úpravy SUM v jazycích a instancích, jako je tento, najdete níže. Oracle PŘEČET SOUČTU funkce vypočítá součet pro každou hodnotu ve skupině hodnot. Dělá to tak, že vezme výraz, vyhodnotí ho na všech členech skupiny a pak vrátí výsledek, jako by byly sečteny.
Klíčové slovo OVER určuje, které řádky je třeba zahrnout do výpočtů. Je také možné zadat více podmínek s různými úrovněmi vnoření pomocí závorek.
Je v SQL k SUM ještě něco?
SUM je mnohem flexibilnější, než jen získat něco jako celek. Můžeme to například zkombinovat s KDE a vypočítat součet platů zaměstnanců s platy nad 100 000:
SELECT SUM(salary) AS "Total Salary"
FROM employees
WHERE salary > 100000;
Nebo předpokládejme, že chcete zjistit, kolik zaměstnanců má danou dovednost. Můžete použít tento kód:
SELECT COUNT(*)
FROM EMPLOYEE
WHERE SKILL = 'SQL';
Dalším případem je použití SQL SUM s GROUP BY :
SELECT department, SUM(sales) AS "Total sales"
FROM order_details
GROUP BY department;
Závěr
Operátor SUM v SQL je agregační funkce, která provádí matematický součet hodnot. Je to šikovná malá funkce, zvláště při použití s jinými operátory, a je podporována mnoha populárními systémy.
Rozsah tohoto operátora je obrovský. Použili byste ho, kdykoli potřebujete určitý součet určitých hodnot. Chcete-li například zjistit, kolik studentů na jedné dané univerzitě dosáhlo ve zkouškách více než 90 % k hodnocení univerzit, můžete použít funkci SUM.