PostgreSQL AVG Function

Advertisements


PostgreSQL AVG function is used to find out the average of a field in various records.

To understand AVG function consider the table COMPANY having records as follows:

testdb# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

Now suppose based on the above table you want to calculate average of all the SALARY, then you can do so by using the following command:

testdb=# SELECT AVG(SALARY) FROM COMPANY;

Above PostgreSQL statement will produce the following result:

        avg
 ------------------
  37142.8571428571
(1 row)

You can take average of various records set using GROUP BY clause. Following example will take average all the records related to a single person and you will have average salary of each person.

testdb=# SELECT name, AVG(SALARY) FROM COMPANY GROUP BY name;
  name  |  avg
 -------+-------
  Teddy | 20000
  Paul  | 20000
  Mark  | 65000
  David | 85000
  Allen | 15000
  Kim   | 45000
  James | 10000
(7 rows)


Advertisements
Advertisements