Функция PostgreSQL MAX
Макс функция
Функция PostgreSQL MAX возвращает максимальное значение, указанное выражением в наборе агрегированных строк. Эта функция принимает выражение, включающее любые числовые, строковые, даты или значения типа данных времени, и возвращает максимальное значение в качестве значения того же типа данных, который указан в выражении.
Синтаксис:
MAX (* | [DISTINCT] ALL | column_name)
параметры
название | Описание |
---|---|
column_name | Наименование столбца |
* | Звездочкой (*) обозначены все строки. |
DISTINCT | Этот пункт не является обязательным. Это указывает на уникальность. |
ВСЕ | Этот пункт не является обязательным. Это предложение по умолчанию. |
Содержание:
Пример функции PostgreSQL MAX
NB DISTINCT и ALL не имеют никакого эффекта, так как максимальное значение будет одинаковым в любом случае.
Образец таблицы
Если мы хотим найти максимальную зарплату всех сотрудников в таблице сотрудников , можно использовать следующий SQL.
SQL
Код:
SELECT MAX(salary)
FROM employee;
Выход:
Наглядное представление функции PostgreSQL MAX ()
PostgreSQL MAX как уровень
Если мы хотим найти максимальную зарплату для всех сотрудников и показать результат по заголовку «Максимальная зарплата» в таблице сотрудников , можно использовать следующий SQL.
SQL
Код:
SELECT MAX(salary) AS "Maximum Salary"
FROM employee;
ИЛИ ЖЕ
Код:
SELECT MAX(DISTINCT salary) AS "Maximum Salary"
FROM employee;
ИЛИ ЖЕ
Код:
SELECT MAX(ALL salary) AS "Maximum Salary"
FROM employee;
Выход:
Функция PostgreSQL MAX с двумя столбцами
Если мы хотим получить максимальную зарплату и комиссию из таблицы сотрудников , можно использовать следующий SQL.
SQL
Код:
SELECT MAX(salary) "Maximum Salary",
MAX(commission) "Maximum Commission"
FROM employee;
Выход:
Предложение PostgreSQL MAX WHERE
Если мы хотим получить максимальную зарплату и вычет из таблицы сотрудников , обозначенной как CLERCK, можно использовать следующий SQL.
SQL
Код:
SELECT MAX(salary)AS "Maximum Salary",
MAX(deduction) AS "Maximum Deduction"
FROM employee
WHERE designame='CLERCK';
Выход:
PostgreSQL MAX с GROUP BY
Пример таблицы: сотрудники
Если мы хотим получить максимальную зарплату для каждого обозначения, доступного в таблице сотрудника , можно использовать следующий SQL.
SQL
Код:
SELECT job_id, MAX(salary) AS "Maximum Salary"
FROM employees
GROUP BY job_id;
Пример вывода:
job_id | Максимальная зарплата ------------ + ---------------- AC_ACCOUNT | 8300,00 ST_MAN | 8200,00 IT_PROG | 9000,00 SA_MAN | 14000,00 AD_PRES | 24000,00 AC_MGR | 12000,00 FI_MGR | 12000,00 AD_ASST | 4400,00 MK_MAN | 13000,00 PU_CLERK | 3100,00 HR_REP | 6500,00 PR_REP | 10000,00 FI_ACCOUNT | 9000,00 SH_CLERK | 4200,00 AD_VP | 17000,00 SA_REP | 11500,00 ST_CLERK | 3600,00 MK_REP | 6000,00 PU_MAN | 11000,00 (19 рядов)
Иллюстрированная презентация PostgreSQL MAX с GROUP BY
PostgreSQL MAX с клаузулой
Пример таблицы: сотрудники
Если мы хотим получить те обозначения, чья максимальная зарплата составляет 6500 и выше в пределах диапазона зарплат ниже 12000, можно использовать следующий SQL.
SQL
Код:
SELECT job_id,MAX(salary) AS "Maximum Salary"
FROM employees
WHERE salary<12000
GROUP BY job_id
HAVING MAX(salary)>=6500;
Пример вывода:
job_id | Максимальная зарплата ------------ + ---------------- AC_ACCOUNT | 8300,00 ST_MAN | 8200,00 IT_PROG | 9000,00 SA_MAN | 11000,00 HR_REP | 6500,00 PR_REP | 10000,00 FI_ACCOUNT | 9000,00 SA_REP | 11500,00 PU_MAN | 11000,00 (9 рядов)
Иллюстрированная презентация PostgreSQL MAX с HAVING
PostgreSQL MAX с GROUP BY и ORDER BY
Пример таблицы: сотрудники
Следующий запрос вернет обозначение, максимальная зарплата которого составляет 6500 и выше в пределах диапазона зарплаты ниже 12000, а максимальная зарплата для каждого назначения входит в список в порядке убывания.
SQL
Код:
SELECT job_id,MAX(salary) AS "Maximum Salary"
FROM employees
WHERE salary<12000
GROUP BY job_id
HAVING MAX(salary)>=6500
ORDER BY MAX(salary) DESC;
Пример вывода:
job_id | Максимальная зарплата ------------ + ---------------- SA_REP | 11500,00 PU_MAN | 11000,00 SA_MAN | 11000,00 PR_REP | 10000,00 FI_ACCOUNT | 9000,00 IT_PROG | 9000,00 AC_ACCOUNT | 8300,00 ST_MAN | 8200,00 HR_REP | 6500,00 (9 рядов)
Новый контент: Composer: менеджер зависимостей для PHP , R программирования