Пример предполагает, что вам нужна сумма valuedepartment
за idhostel
.Вы можете получить это, используя подзапрос.
SELECT e1.id,
e1.iddepartment,
e1.idhostel,
e1.valuedepartment,
(SELECT sum(e2.valuedepartment)
FROM employee e2
WHERE e2.idhostel = e1.idhostel) valuehostel
FROM employee e1;
Я не рекомендую сохранять это.Вы всегда можете запросить его, как показано выше, чтобы вы могли получить информацию.Однако постоянные значения, рассчитанные на основе других данных, несут риск несоответствий, и их следует избегать, если это возможно.В противном случае нужно быть очень осторожным, чтобы избежать несоответствий.
Но вы можете использовать представление, которое вы можете запросить, как таблицу.
CREATE VIEW employees_with_valuehostel
AS
SELECT e1.id,
e1.iddepartment,
e1.idhostel,
e1.valuedepartment,
(SELECT sum(e2.valuedepartment)
FROM employee e2
WHERE e2.idhostel = e1.idhostel) valuehostel
FROM employee e1;
Затем вы можете запросить представление.
SELECT *
FROM employees_with_valuehostel;
даст вам тот же результат, что и запрос выше.