Слияние кода завершено, страница обновится автоматически
Получите информацию о максимальной зарплате текущих сотрудников в каждом департаменте, предоставив dept_no, emp_no и соответствующую им salary.
CREATE TABLE `dept_emp` (
`emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`)
);
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`)
);
SELECT dept_no, s.emp_no, MAX(salary) AS salary FROM dept_emp de LEFT JOIN salaries s ON de.emp_no = s.emp_no WHERE de.to_date = '9999-01-01' AND s.to_date = '9999-01-01' GROUP BY dept_no
SELECT a.dept_no AS 'Департамент', a.emp_no AS 'Сотрудник', MAX(a.salary) AS 'Зарплата'
FROM (
SELECT dp.dept_no, dp.emp_no, ss.salary
FROM dept_emp dp
LEFT JOIN salaries ss ON dp.emp_no = ss.emp_no
WHERE dp.to_date = '9999-01-01' AND ss.to_date = '9999-01-01'
) a
GROUP BY a.dept_no
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )