×

SQL Aggregate Operators

In SQL, the aggregate operators perform a calculation on multiple rows or multiple values of a single column and give the output a single value.

Here, multiple rows of data are grouped and form a single data.

Types of Aggregate Operators

In SQL, there are five types of aggregate functions/operators to perform the operations on certain data.

  1. sum()
  2. avg()
  3. max()
  4. min()
  5. count()

In SQL, The aggregate functions ignore the NULL values when it performs the calculations on multiple rows, except for the count() operator.

In this concept, we can also use the aggregate operators with the group by ang having classes to combine the data of the select statement.

Sum() Operators

The sum() function gives the total sum of the selected columns of a table

This operator mainly works on the numeric columns only.

Syntax:

sum()

Or

sum([all | distincts]expression)

Example: Let’s take an employee table and perform the sum() operation on it

IDNAMEAGESALARY
11Jack3010000
12John3220000
13Jill3530000
14Rose3740000
15James4050000
13Jill3340000
16Alex3370000

Query: Select sum(salary) from employee;

Output:

SUM(SALARY)
260000

Query: Select sum(eid) from employee;

Output:

SUM(ID)
94

Query: Select sum(age) from employee;

Output:

SUM(AGE)
240

Using group by:

  • Select sum(salary), age from employee group by age;
SUM(SALARY)AGE
10000
20000
30000
40000
50000
110000
30
32
35
37
40
33
  • Select sum(salary), id from employee group by id;
SUM(SALARY)AGE
10000
70000
40000
20000
50000
70000
11
13
14
12
15
16
  • Select sum(salary), name from employee group by name;
SUM(SALARY)NAME
50000
20000
70000
40000
70000
10000
James
John
Jill
Rose
Alex
Jack

Using having clause:

  • Select sum(salary), idfrom employee1 group by id having sum(salary)>40000;
SUM(SALARY)ID
70000
50000
80000
13
15
16
  • Select sum(age) from employee group by id having sum(id)>12;
SUM(ID)NAME
15
26
14
16
James
jill
rose
Alex

Avg() Operators

The avg() function gives the total average of the selected columns of a table

This operator mainly works on the numeric columns, and it returns the average of all non-null values

Syntax:

avg()

Or

avg([all | distincts]expression)

Example: Let’s take an employee table and perform the avg() operation on it

IDNAMEAGESALARY
11Jack3010000
12John3220000
13Jill3530000
14Rose3740000
15James4050000
13Jill3340000
16Alex3370000

Query: Select avg(salary) from employee;

Output:

AVG(SALARY)
37142.8571

Query: Select avg(id) from employee;

Output:

AVG(ID)
13.4285714

Query: Select avg(age) from employee;

Output:

AVG(AGE)
34.2857143

Using group by:

  • Select avg(salary), age from employee group by age;
AVG(SALARY)AGE
10000
20000
30000
40000
50000
550000
30
32
35
37
40
33
  • Select avg(salary), id from employee group by id;
AVG(SALARY)AGE
10000
35000
40000
20000
50000
70000
11
13
14
12
15
16
  • Select avg(salary), name from employee group by name;
SUM(SALARY)NAME
50000
20000
35000
40000
70000
10000
James
John
Jill
Rose
Alex
Jack

Using having clause:

  • Select avg(salary), id from employee1 group by id  having avg(salary)>40000;
AVG(SALARY)ID
50000
70000
15
16
  • Select avg(id),name from employee group by name having avg(id)>12;
AVG(ID)NAME
15
13
14
16
James
Jill
Rose
Alex

Max() Operators

The max() function gives the highest or maximum value of the selected columns of a table, and it is a set of all non-null values.

Syntax:

max()

Or

max([all | distincts]expression)

Example:

Let’s take an employee table and perform the max() operation on it

IDNAMEAGESALARY
11Jack3010000
12John3220000
13Jill3530000
14Rose3740000
15James4050000
13Jill3340000
16Alex3370000

Query: Select max(salary) from employee;

Output:

MAX(SALARY)
70000

Query: Select  max(id) from employee;

Output:

MAX(ID)
16

Query: Select max(age) from employee;

Output:

MAX(AGE)
40

Using group by:

  • Select max(salary), age from employee group by age;
MAX(SALARY)AGE
10000
20000
30000
40000
50000
70000
30
32
35
37
40
33
  • Select max(salary), id from employee group by id;
MAX(SALARY)AGE
10000
40000
40000
20000
50000
70000
11
13
14
12
15
16
  • Select max(salary), name from employee group by name;
MAX(SALARY)NAME
50000
20000
40000
40000
70000
10000
James
John
Jill
Rose
Alex
Jack

Using having clause:

  • select max(salary), id from employee1 group by id having max(salary)>40000;
MAX(SALARY)ID
50000
70000
15
16
  • Select max(id), name from employee group by name having max(id)>12;
AVG(ID)NAME
15
13
14
16
James
Jill
Rose
Alex

Min() Operators

The min() function gives the lowest or minimum value of the selected columns of a table, and it is a set of all non-null values.

Syntax:

min()

Or

max([all | distincts]expression)

Example:

Let’s take an employee table and perform the min() operation on it

IDNAMEAGESALARY
11Jack3010000
12John3220000
13Jill3530000
14Rose3740000
15James4050000
13Jill3340000
16Alex3370000

Query: Select max(salary) from employee;

Output:

MIN(SALARY)
10000

Query: Select max(id) from employee;

Output:

MIN(ID)
11

Query: Select max(age) from employee;

Output:

MIN(AGE)
30

Using group by:

  • Select min(salary), age from employee group by age;
MAX(SALARY)AGE
10000
20000
30000
40000
50000
70000
30
32
35
37
40
33
  • Select min(salary), id from employee group by id;
MAX(SALARY)AGE
10000
40000
40000
20000
50000
70000
11
13
14
12
15
16
  • Select min(salary), name from employee group by name;
MIN(SALARY)NAME
50000
20000
30000
40000
70000
10000
James
John
Jill
Rose
Alex
Jack

Using having clause:

  • select min(salary), id from employee1 group by id  having min(salary)>40000;
MIN(SALARY)ID
50000
70000
15
16
  • Select max(id), name from employee group by name having min(id)>12;
AVG(ID)NAME
15
13
14
16
James
Jill
Rose
Alex

Count() Operators

The count() function gives the number of rows in the table. It is a set  of all non-null values

Syntax:

count()

Or

count([all |distincts]expression)

Example:

Let’s take an employee table and perform the count() operation on it

IDNAMEAGESALARY
11Jack3010000
12John3220000
13Jill3530000
14Rose3740000
15James4050000
13Jill3340000
16Alex3370000

Query: Select count(salary) from employee;

Output:

COUNT(SALARY)
7

Query: Select count(id) from employee;

Output:

COUNT(ID)
7

Query: Select count(age) from employee;

Output:

COUNT(AGE)
7

Using group by:

  • Select max(salary), age from employee group by age;
MAX(SALARY)AGE
1
1
1
1
1
2
30
32
35
37
40
33
  • Select max(salary), id from employee group by id;
MAX(SALARY)AGE
1
1
1
1
1
1
11
13
14
12
15
16
  • Select max(salary), name from employee group by name;
MAX(SALARY)NAME
1
1
1
1
1
1
James
John
Jill
Rose
Alex
Jack

Using having clause:

  1. select count(salary), id from employee1 group by id having count(salary)>40000;
    no rows selected
  2. Select max(id), name from employee group by name having max(id)>12;
    no rows selected

Related Topics

SQL Inner Join

In Structured Query Language, the most used join query is the Inner join query. Inner join query retrieves the records from one or more tables with similar data or records. The...

4 minutes read.

How to Add Comments in SQL?

How to Add Comments in SQL Comments are text notes that are incorporated into the program to make the code easier to understand. In SQL, commenting is used to explain various sections...

2 minutes read.

SQL INSERT INTO SELECT

In this tutorial, we will help you to understand and learn how to copy records from one table and add them to another table in the SQL with the help...

5 minutes read.

SQL Select Distinct

The SQL DISTINCT query is used to fetch unique values from the tables using the SELECT statement in the SQL. There may be a situation that arises when you want to...

4 minutes read.

SQL UNION ALL Operator

This page has all the information about UNION ALL operator, which is used to join all the values from the SELECT queries. Similar records were not considered in the result in...

3 minutes read.

What is SQL Injection?

Introduction to SQL Injection SQL injection is a vulnerability or a technique that might destroy the database of a website or a web application. It is one of the most widely...

4 minutes read.

SQL Insert multiple rows

This article will deal with a new insertion method in SQL which inserts multiple rows at a time. Multiple records can be inserted at a time into a specific table with...

4 minutes read.

How to use HAVING clause in SQL

In this article, we will learn about the HAVING clause concept and how to use it in SQL. What is the HAVING clause? In Structured Query Language, HAVING Clause used with GROUP...

7 minutes read.

How to remove duplicates in SQL

Introduction There are some specific rules that needs to be followed while creating the database objects. To improve the performance of a database, a primary key, clustered and non-clustered indexes, and...

9 minutes read.

SQL HAVING Clause

In this tutorial, we will understand the HAVING clause concept in SQL with the help of examples. The HAVING Clause in the SQL is used as we cannot use the WHERE...

3 minutes read.

SQL Comparision Operator

The Comparison Operator compares different data of the Structured Query Language table and checks whether the data are the same, less than, greater than, less than, or greater than equal....

14 minutes read.

SQL GROUP BY CLAUSE

The GROUP BY clause is used to arrange similar records into the groups in the Structured Query Language queries. The records are arranged with the help of functions which is...

4 minutes read.

Truncate function in SQL

The TRUNCATE is a numeric function in SQL which truncates the number according to the particular decimal points. Syntax of TRUNCATE Function SELECT TRUNCATE(X, D) AS Alias_Name; In the TRUNCATE syntax, X...

4 minutes read.

How to use LIKE in SQL

In this SQL article, we will learn and understand how to use LIKE to the columns in the SQL tables. What is Like? Like is an operator in the SQL. It is...

7 minutes read.

SQL Count

Structured Query Language Count() Function is used with Structured Query Language SELECT Statement. SQL Count() function returns the number of items that match the specified criteria in the SELECT statement. Count()...

2 minutes read.

Difference between Delete, Drop and Truncate in SQL

What is the Delete command in SQL? In DML (Data Manipulation Language), we use the delete command that allows us to delete the some entries and modify the databases in SQL....

4 minutes read.

Save Point in SQL

In SQL, the classification is done into 4 languages. They are Data Definition Language (DDL)Data Manipulation Language (DML)Transaction Control Language (TCL)Data Control Language (DCL) Save Point falls under the Transaction Control Language....

4 minutes read.

SQL CASE

This page contains all the information about SQL CASE. The CASE is an If-Else type of logical query used in the statement. The CASE in Structured Query Language is similar...

5 minutes read.

Trigger in SQL

In this article, we will learn about the concept of trigger in SQL and its implementation with the help of an example. A Trigger in Structured Query Language is a set...

4 minutes read.

How to use INNER JOIN in SQL

In this article, we will learn about the INNER JOIN concept and how to use it in SQL with the WHERE clause. What is INNER JOIN in SQL? Inner Join is a...

6 minutes read.