Database
 sql >> база данни >  >> RDS >> Database

SQL SELECT SUM

Функцията SQL Sum() е агрегатна функция в SQL, която връща общите стойности на израз. Изразът може да е числов или може да е израз.

Синтаксис:

SELECT SUM(columnname) FROM table_name WHERE conditions; 

Помислете за съществуващите таблици, които имат следните записи:

Таблица:Служители

ИДЕНТИФИКАТОР НА СЛУЖИТЕЛЯ FIRST_NAME LAST_NAME ЗАПЛАТА ГРАД ОТДЕЛ MANAGERID
1001 VAIBHAVI МИШРА 65500 ПУНА ORACLE 1
1002 VAIBHAV ШАРМА 60 000 NOIDA C# 5
1003 НИХИЛ VANI 50500 ДЖАЙПУР FMW 2
2001 PRACHI ШАРМА 55500 ЧАНДИГАР ORACLE 1
2002 BHAVESH ДЖЕЙН 65500 ПУНА FMW 2
2003 РУЧИКА ДЖЕЙН 50 000 МУМБАЙ C# 5
3001 PRANOTI ШЕНДЕ 55500 ПУНА JAVA 3
3002 ANUJA WANRE 50500 ДЖАЙПУР FMW 2
3003 DEEPAM ДЖАУХАРИ 58500 МУМБАЙ JAVA 3
4001 РАДЖЕШ GOUD 60500 МУМБАЙ ТЕСТВАНЕ 4
4002 ASHWINI BAGHAT 54500 NOIDA JAVA 3
4003 РУЧИКА AGARWAL 60 000 ДЕЛХИ ORACLE 1
5001 АРХИТ ШАРМА 55500 ДЕЛХИ ТЕСТВАНЕ 4

Пример 1: Напишете заявка, която сумира общата заплата на служителите от таблицата на служителите.

SELECT SUM (SALARY) AS 'SALARY' FROM EMPLOYEES;

Изразът Sum ще покаже сумата от общата заплата. s

Изход:

ЗАПЛАТА
742000

Пример 2: Напишете заявка за сумиране на заплатата на служителите, чийто град е Пуна, от таблицата на служителите.

SELECT CITY, SUM(SALARY) AS 'SALARY'  FROM EMPLOYEES WHERE CITY = 'PUNE';

Тази заявка ще направи сума от заплатата на служителите, чийто град е Пуна.

Изход:

ГРАД ЗАПЛАТА
ПУНА 186500

Пример 3: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите на служителите, чийто отдел е Oracle.

SELECT DEPARTMENT, SUM(SALARY) AS 'SALARY'  FROM EMPLOYEES WHERE DEPARTMENT = 'ORACLE';

Изход:

ОТДЕЛ ЗАПЛАТА
ORACLE 181000

Пример 4: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите, чийто отдел включва oracle и FMW.

SELECT SUM(SALARY) AS 'SALARY'  FROM EMPLOYEES WHERE DEPARTMENT IN ('ORACLE', 'FMW');

Изход:

ЗАПЛАТА
347500

Пример 4: Напишете заявка за сумирана заплата на служителите от таблицата на служителите, чиято заплата е по-голяма от 50 000 и градът включва Пуна и Мумбай.

SELECT CITY, SUM(SALARY) AS EMPLOYEE_SALARY FROM EMPLOYEES WHERE SALARY > 50000 AND CITY IN ('PUNE', 'MUMBAI') GROUP BY CITY;

Изход :

ГРАД РАБОТА_ЗАПЛАТА
ПУНА 119 000
МУМБАЙ 186500

Пример 5: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите, чиято заплата е по-голяма от 50 000 или градът включва Oracle, FMW и група от отдела.

SELECT DEPARTMENT, SUM(SALARY) AS EMPLOYEE_SALARY FROM EMPLOYEES WHERE SALARY > 50000 OR DEPARTMENT IN ('ORACLE', 'FMW') GROUP BY DEPARTMENT;

Изход:

ОТДЕЛ РАБОТА_ЗАПЛАТА
C# 60 000
FMW 166500
JAVA 168500
ORACLE 181000
ТЕСТВАНЕ 116 000

Пример 6: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите, като използвате уникални градове на служителите и група по град.

SELECT CITY, SUM(DISTINCT SALARY) AS 'EMPLOYEE_SALARY' FROM EMPLOYEES GROUP BY CITY;

Изход:

ГРАД РАБОТА_ЗАПЛАТА
ЧАНДИГАРХ 55500
ДЕЛХИ 115500
ДЖАЙПУР 50500
МУМБАЙ 169 000
NOIDA 114500
ПУНА 121 000

Пример 7: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите, които имат уникален отдел и група по отдел.

SELECT DEPARTMENT, SUM(DISTINCT SALARY) AS 'EMPLOYEE_SALARY' FROM EMPLOYEES GROUP BY DEPARTMENT;

Изход:

ОТДЕЛ РАБОТА_ЗАПЛАТА
C# 110 000
FMW 116 000
JAVA 168500
ORACLE 181000
ТЕСТВАНЕ 116 000

Пример 8: Напишете заявка за сумиране на заплатата на служителите от таблицата на служителите и групата по град, отдел.

SELECT CITY, DEPARTMENT, SUM(SALARY) AS 'EMPLOYEE_SALARY' FROM EMPLOYEES GROUP BY CITY, DEPARTMENT;

Изход:

ГРАД ОТДЕЛ РАБОТА_ЗАПЛАТА
ЧАНДИГАРХ ORACLE 55500
ДЕЛХИ ORACLE 60 000
ДЕЛХИ ТЕСТВАНЕ 55500
ДЖАЙПУР FMW 101 000
МУМБАЙ C# 50 000
МУМБАЙ JAVA 58500
МУМБАЙ ТЕСТВАНЕ 60500
NOIDA C# 60 000
NOIDA JAVA 54500
ПУНА FMW 65500
ПУНА JAVA 55500
ПУНА ORACLE 65500

Пример 9: Напишете заявка за сумиране на заплатата на служителите от групата таблица на служителите по града, в който общата заплата е по-голяма от 75 000.

SELECT CITY, SUM(SALARY) AS SALARY FROM EMPLOYEES GROUP BY CITY HAVING SUM(SALARY) > 75000;

Изход:

ГРАД ЗАПЛАТА
ДЕЛХИ 115500
ДЖАЙПУР 101 000
МУМБАЙ 169 000
NOIDA 114500
ПУНА 186500

Както виждаме, има само градове, чиято обща заплата е по-голяма от 75 000.

Пример 10: Напишете заявка за сумиране на заплатата на служител с лаптоп и групиране от отдела.

SELECT DEPARTMENT, SUM(SALARY) AS SALARY FROM EMPLOYEES WHERE EMPLOYEEID IN (SELECT EMPLOYEEID FROM LAPTOP) GROUP BY DEPARTMENT;

Изход:

ОТДЕЛ ЗАПЛАТА
C# 60 000
JAVA 113 000
ORACLE 60 000
ТЕСТВАНЕ 55500

Пример 11: Напишете заявка за сумиране на заплатата на служителите с лаптоп и  група по отдела, където общата заплата е по-голяма от 58 000.

SELECT DEPARTMENT, SUM(SALARY) AS SALARY FROM EMPLOYEES WHERE EMPLOYEEID IN (SELECT EMPLOYEEID FROM LAPTOP) GROUP BY DEPARTMENT HAVING SUM(SALARY) > 58000;

Изход:

ОТДЕЛ ЗАПЛАТА
C# 60 000
JAVA 113 000
ORACLE 60 000


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да махнете таблици и колони с SQL

  2. Основи на табличните изрази, част 13 – Вградени функции с таблично стойности, продължение

  3. SQL език за манипулиране на данни

  4. Разберете ролята на архитектите на данни в управлението на данните

  5. Как да преброите броя на редовете в таблица в SQL