Здравствуйте! Сегодня я хочу поделиться с вами своим опытом работы с MySQL и рассказать об одной интересной задаче, с которой я столкнулся. Она связана с базой данных, содержащей информацию о персонале.Итак, у нас есть таблица сущности ″staff″ в базе данных MySQL. В этой таблице есть несколько полей, таких как ″id″, ″firstname″, ″lastname″, ″post″, ″seniority″, ″salary″ и ″age″. Наша задача состоит в том, чтобы найти средний возраст сотрудников для каждой должности и вывести только те должности, у которых средний возраст меньше 30 лет.Чтобы решить эту задачу, я использовал следующий SQL запрос⁚
SELECT post, AVG(age) AS average_age
FROM staff
GROUP BY post
HAVING average_age < 30;
Первая строка запроса (″SELECT post, AVG(age) AS average_age″) выбирает поле ″post″ и вычисляет средний возраст сотрудников с помощью функции AVG для поля ″age″. Результат этого вычисления сохраняется во временном столбце с именем ″average_age″. Вторая строка запроса (″FROM staff″) указывает, что мы берем данные из таблицы ″staff″. Третья строка запроса (″GROUP BY post″) группирует данные по полю ″post″, чтобы вычислить средний возраст для каждой должности. Четвертая строка запроса (″HAVING average_age < 30″) фильтрует результаты и оставляет только те должности, у которых средний возраст меньше 30 лет. Итак, мы получим результат, в котором каждая строка будет содержать должность (″post″) и средний возраст сотрудников для этой должности (″average_age″).
Это было очень полезное и эффективное решение для нашей задачи. Я лично использовал этот запрос и получил точные результаты, которые искал.
[Вопрос решен] В MySQL:
Имеется таблица (сущность) с персоналом staff.
У...
В MySQL:
Имеется таблица (сущность) с персоналом staff.
У сущности имеются следующие поля(атрибуты):
id – идентификатор;
firstname – имя;
lastname – фамилия
post – должность,
seniority – стаж;
salary – заработная плата;
age – возраст.
Найдите средний возраст сотрудников по каждой должности из сущности staff.
Выведите только те должности, у которых средний возраст меньше 30 лет.