Ne pouvez-vous pas simplement utiliser la fenêtre par sélection
Quelque chose comme
SELECT name,
first_value() OVER (partition by name order by date) as f,
last_value() OVER (partition by name order by date) as l
from table1
Aussi à partir de votre référence, vous pouvez le faire comme ça
SELECT sum(salary) OVER w, avg(salary) OVER w
FROM empsalary
WINDOW w AS (PARTITION BY depname ORDER BY salary DESC)