кодесурса
«MySQL

Функция PostgreSQL AVG

script1adsense2code
script1adsense3code

Функция AVG

Функция AVG определяет среднее значение всех выбранных значений столбца.

Синтаксис:

 AVG (* | [DISTINCT] ALL | column_name)

параметры

название Описание
column_name Наименование столбца
* Звездочкой (*) обозначены все строки.
DISTINCT Этот пункт не является обязательным. Это указывает на уникальность.
ВСЕ Этот пункт не является обязательным. Это предложение по умолчанию.

Содержание:

Пример функции PostgreSQL AVG

Образец таблицы

«PostgreSQL

Если мы хотим найти среднюю зарплату для всех сотрудников в таблице сотрудников , можно использовать следующий SQL.

SQL

Код:

SELECT AVG(salary) 
FROM employee;

Выход:

«PostgreSQL

Графическое представление функции PostgreSQL AVG ()

«PostgreSQL

PostgreSQL AVG как уровень

Если мы хотим получить среднюю зарплату для всех сотрудников и показать результат в сравнении с заголовком «Средняя зарплата» в таблице сотрудников , можно использовать следующий SQL.

SQL

Код:

SELECT AVG(salary) "Average Salary" 
FROM employee;

ИЛИ ЖЕ

Код:

SELECT AVG(DISTINCT salary) "Average Salary" 
FROM employee;

ИЛИ ЖЕ

Код:

SELECT AVG(ALL salary) "Average Salary" 
FROM employee;

Выход:

«PostgreSQL

PostgreSQL AVG две колонки

Если мы хотим получить среднюю зарплату и вычет из таблицы сотрудников , можно использовать следующий SQL.

SQL

Код:

SELECT AVG(salary) "Average Salary" ,
AVG(deduction) "Average Deduction"
FROM employee;

Выход:

«PostgreSQL

PostgreSQL AVG с максимальным, минимальным, счетом и суммой

Если мы хотим получить среднюю зарплату, максимальную зарплату, минимальную зарплату, общую сумму сотрудников и общую зарплату из таблицы сотрудников , можно использовать следующий SQL.

SQL

Код:

SELECT AVG(salary) "Average Salary" ,
MAX(salary) "Maximum Salary",
MIN(salary) "Minimum Salary",
COUNT(*) "Total Employee",
SUM(salary) "Total Salary"
FROM employee;

Выход:

«PostgreSQL

Предложение PostgreSQL AVG WHERE

Если мы хотим получить среднюю зарплату и вычет из таблицы сотрудников, которая относится к обозначению «SALESMAN», можно использовать следующий SQL.

SQL

Код:

SELECT AVG(salary) "Average Salary" ,
AVG(deduction) "Average Deduction"
FROM employee
WHERE designame='SALESMAN';

Выход:

«PostgreSQL

Иллюстрированная презентация PostgreSQL AVG с предложением WHERE

«PostgreSQL

PostgreSQL AVG с GROUP BY

Пример таблицы: сотрудники


Следующее утверждение возвратит обозначение и среднюю зарплату против каждого обозначения из таблицы сотрудников .

SQL

Код:

SELECT job_id, ROUND(AVG(salary),2) AS "Average Salary rounded" 
FROM employees 
GROUP BY job_id;

Пример вывода:

 job_id | Средняя заработная плата
------------ + ----------------
 AC_ACCOUNT | 8300,00
 ST_MAN | 7280,00
 IT_PROG | 5760,00
 SA_MAN | 12200,00
 AD_PRES | 24000,00
 AC_MGR | 12000,00
 FI_MGR | 12000,00
 AD_ASST | 4400,00
 MK_MAN | 13000,00
 PU_CLERK | 2780,00
 HR_REP | 6500,00
 PR_REP | 10000,00
 FI_ACCOUNT | 7920,00
 SH_CLERK | 3215,00
 AD_VP | 17000,00
 SA_REP | 8350,00
 ST_CLERK | 2785,00
 MK_REP | 6000,00
 PU_MAN | 11000,00
(19 рядов)

Иллюстрированная презентация PostgreSQL AVG с GROUP BY

«PostgreSQL

PostgreSQL AVG с WHAE CLAUSE и GROUP BY

Пример таблицы: сотрудники


Следующее утверждение возвратит среднюю мудрую зарплату для того назначения, зарплата которого не превышает 12000 и выше, из таблицы сотрудников .

SQL

Код:

SELECT job_id,ROUND(AVG(salary),2) AS "Avereage Salary" 
FROM employees 
WHERE salary<12000 
GROUP BY job_id;

Пример вывода:

 job_id | Средняя зарплата
------------ + -----------------
 AC_ACCOUNT | 8300,00
 ST_MAN | 7280,00
 IT_PROG | 5760,00
 SA_MAN | 10750,00
 AD_ASST | 4400,00
 PU_CLERK | 2780,00
 HR_REP | 6500,00
 PR_REP | 10000,00
 FI_ACCOUNT | 7920,00
 SH_CLERK | 3215,00
 SA_REP | 8350,00
 ST_CLERK | 2785,00
 MK_REP | 6000,00
 PU_MAN | 11000,00
(14 рядов)

PostgreSQL AVG с HAVING и GROUP BY

Пример таблицы: сотрудники


Следующее заявление sql вернет, общее назначение сотрудников и среднюю зарплату для этого назначения, зарплата которого не превышает 12000 и выше, и как минимум пять сотрудников имеют это назначение.

SQL

Код:

SELECT job_id,COUNT(*) AS "Number of Employees", 
ROUND(AVG(salary),2) AS "Average Salary" 
FROM employees 
WHERE salary<12000 
GROUP BY job_id 
HAVING COUNT(*)>=5;

Пример вывода:

 job_id | Количество работников | Средняя заработная плата
------------ + --------------------- + --------------- -
 ST_MAN | 5 | 7280,00
 IT_PROG | 5 | 5760,00
 PU_CLERK | 5 | 2780,00
 FI_ACCOUNT | 5 | 7920,00
 SH_CLERK | 20 | 3215,00
 SA_REP | 30 | 8350,00
 ST_CLERK | 20 | 2785,00
(7 рядов)			  

Иллюстрированная презентация PostgreSQL AVG с HAVING

«PostgreSQL

PostgreSQL AVG с GROUP BY и ORDER BY

Пример таблицы: сотрудники


Приведенное ниже утверждение вернет обозначение: общая численность работников и средняя заработная плата, упорядоченные в порядке убывания в соответствии с общим числом работников, для обозначения, зарплата которого не превышает 12000 и выше, и как минимум пять сотрудников имеют это обозначение.

SQL

Код:

SELECT job_id,COUNT(*) AS "Number of employees" ,
ROUND(AVG(salary),2) AS "Average Salary" 
FROM employees 
WHERE salary<12000 
GROUP BY job_id 
HAVING COUNT(*)>=5 
ORDER BY COUNT(*) DESC;

Пример вывода:

 job_id | Количество сотрудников | Средняя заработная плата
------------ + --------------------- + --------------- -
 SA_REP | 30 | 8350,00
 SH_CLERK | 20 | 3215,00
 ST_CLERK | 20 | 2785,00
 ST_MAN | 5 | 7280,00
 FI_ACCOUNT | 5 | 7920,00
 IT_PROG | 5 | 5760,00
 PU_CLERK | 5 | 2780,00
(7 рядов)

Предыдущий: MIN
Далее: Логические операторы

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code