кодесурса
«MySQL

PostgreSQL GROUP BY

script1adsense2code
script1adsense3code

Предложение GROUP BY

Предложение group by используется для разделения строк в таблице на более мелкие группы с одинаковыми значениями в указанных столбцах. Это предложение используется с инструкцией SELECT для объединения группы строк на основе значений или определенного столбца или выражения. Агрегатные функции используются для возврата сводной информации по каждой группе.

Предложение WHERE используется для условного извлечения строк из таблицы, следовательно, его нельзя применить к сгруппированному результату.

Синтаксис:

 ВЫБЕРИТЕ [DISTINCT] <column_list> | <Выражение>
ОТ <таблицы> [, <таблица>] [ГДЕ <условие>]
GROUP BY <столбец | выражение>
[ИМЕЕТ <условие>] 
<Условие>

параметры

название Описание
column_list Наименование столбцов
Таблица Название таблицы
DISTINCT Этот пункт не является обязательным. Это указывает на уникальность.
выражение Это могут быть аргументы или заявления и т. Д.
состояние Это критерии запроса.

PostgreSQL GROUP BY пример1

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

«PostgreSQL

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

SQL

Код:

SELECT deptno, COUNT(*)
FROM employee
GROUP BY deptno;

Выход:

«PostgreSQL

PostgreSQL GROUP BY пример2

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

SQL

Код:

SELECT deptno "Department No", 
SUM(salary) "Salary Payable"
FROM employee
GROUP BY deptno;

Выход:

«PostgreSQL

PostgreSQL GROUP BY и ORDER BY

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

SQL

Код:

SELECT designame "Designation", 
COUNT(*) "Number of Employees"
FROM employee
GROUP BY designame
ORDER BY COUNT(*);

Выход:

«PostgreSQL

PostgreSQL GROUP BY и ORDER BY в порядке убывания

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

SQL

Код:

SELECT designame "Designation", 
COUNT(*) "Number of Employees"
FROM employee
GROUP BY designame
ORDER BY 2 DESC;

Выход:

«PostgreSQL

объяснение

ORDER BY в вышеприведенном примере, за которым следует 2 DESC. Здесь 2, т. Е. [COUNT (*)] указывает номер столбца, в котором упорядочивается результат, а DESC указывает порядок по убыванию.

PostgreSQL GROUP BY с MAX, MIN, SUM, AVG

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

SQL

Код:

SELECT designame "Desig.", 
SUM(salary) "Salary",
AVG(salary) "Avg. Salary",
MAX(salary) "Max. Salary",
MIN(salary) "Min. Salary"
FROM employee
GROUP BY designame;

Выход:

«PostgreSQL

PostgreSQL GROUP BY с ГДЕ

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

SQL

Код:

SELECT designame "Designation", 
AVG(salary) "Average Salary"
FROM employee
WHERE designame <>'PRESIDENT'
GROUP BY designame;

Выход:

«PostgreSQL

Предыдущая: DISTINCT
Далее: ЗАКАЗАТЬ ПО

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code